Merge pull request #140 from pftbest/local
Safer nil pointer handling in stddialogs
This commit is contained in:
commit
02104c77a4
|
@ -8,30 +8,34 @@ import "C"
|
||||||
// TODO
|
// TODO
|
||||||
func MsgBoxError(w *Window, title string, description string) {
|
func MsgBoxError(w *Window, title string, description string) {
|
||||||
ctitle := C.CString(title)
|
ctitle := C.CString(title)
|
||||||
|
defer freestr(ctitle)
|
||||||
cdescription := C.CString(description)
|
cdescription := C.CString(description)
|
||||||
|
defer freestr(cdescription)
|
||||||
C.uiMsgBoxError(w.w, ctitle, cdescription)
|
C.uiMsgBoxError(w.w, ctitle, cdescription)
|
||||||
freestr(ctitle)
|
|
||||||
freestr(cdescription)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func OpenFile(w *Window) string {
|
func OpenFile(w *Window) string {
|
||||||
cname := C.uiOpenFile(w.w)
|
cname := C.uiOpenFile(w.w)
|
||||||
name := C.GoString(cname)
|
if cname == nil {
|
||||||
C.uiFreeText(cname)
|
return ""
|
||||||
return name
|
}
|
||||||
|
defer C.uiFreeText(cname)
|
||||||
|
return C.GoString(cname)
|
||||||
}
|
}
|
||||||
|
|
||||||
func SaveFile(w *Window) string {
|
func SaveFile(w *Window) string {
|
||||||
cname := C.uiSaveFile(w.w)
|
cname := C.uiSaveFile(w.w)
|
||||||
name := C.GoString(cname)
|
if cname == nil {
|
||||||
C.uiFreeText(cname)
|
return ""
|
||||||
return name
|
}
|
||||||
|
defer C.uiFreeText(cname)
|
||||||
|
return C.GoString(cname)
|
||||||
}
|
}
|
||||||
|
|
||||||
func MsgBox(w *Window, title string, description string) {
|
func MsgBox(w *Window, title string, description string) {
|
||||||
ctitle := C.CString(title)
|
ctitle := C.CString(title)
|
||||||
|
defer freestr(ctitle)
|
||||||
cdescription := C.CString(description)
|
cdescription := C.CString(description)
|
||||||
|
defer freestr(cdescription)
|
||||||
C.uiMsgBox(w.w, ctitle, cdescription)
|
C.uiMsgBox(w.w, ctitle, cdescription)
|
||||||
freestr(ctitle)
|
|
||||||
freestr(cdescription)
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue