From d45103f2445ed59b7ba78faeae8061327c4ab976 Mon Sep 17 00:00:00 2001 From: Jed Barber Date: Tue, 15 May 2018 16:30:58 +1000 Subject: Fixed errors with Event Dispatch and null string pointers --- src/fltk-widgets-inputs-file.adb | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'src/fltk-widgets-inputs-file.adb') diff --git a/src/fltk-widgets-inputs-file.adb b/src/fltk-widgets-inputs-file.adb index 222b847..92836c8 100644 --- a/src/fltk-widgets-inputs-file.adb +++ b/src/fltk-widgets-inputs-file.adb @@ -7,6 +7,7 @@ with use type + Interfaces.C.Strings.chars_ptr, System.Address; @@ -177,10 +178,16 @@ package body FLTK.Widgets.Inputs.File is function Get_Value (This : in Input) - return String is + return String + is + Ptr : Interfaces.C.Strings.chars_ptr := fl_file_input_get_value (This.Void_Ptr); begin - -- pointer to internal buffer only, so no Free required - return Interfaces.C.Strings.Value (fl_file_input_get_value (This.Void_Ptr)); + if Ptr = Interfaces.C.Strings.Null_Ptr then + return ""; + else + -- pointer to internal buffer only, so no Free required + return Interfaces.C.Strings.Value (Ptr); + end if; end Get_Value; -- cgit