summaryrefslogtreecommitdiff
path: root/src/fltk-widgets-inputs-float.adb
diff options
context:
space:
mode:
Diffstat (limited to 'src/fltk-widgets-inputs-float.adb')
-rw-r--r--src/fltk-widgets-inputs-float.adb12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/fltk-widgets-inputs-float.adb b/src/fltk-widgets-inputs-float.adb
index 3b1b5b3..1ddb2f2 100644
--- a/src/fltk-widgets-inputs-float.adb
+++ b/src/fltk-widgets-inputs-float.adb
@@ -7,6 +7,7 @@ with
use type
+ Interfaces.C.Strings.chars_ptr,
System.Address;
@@ -100,10 +101,15 @@ package body FLTK.Widgets.Inputs.Float is
function Get_Value
(This : in Float_Input)
- return Standard.Float is
+ return Standard.Float
+ is
+ Ptr : Interfaces.C.Strings.chars_ptr := fl_input_get_value (This.Void_Ptr);
begin
- return Standard.Float'Value
- (Interfaces.C.Strings.Value (fl_input_get_value (This.Void_Ptr)));
+ if Ptr = Interfaces.C.Strings.Null_Ptr then
+ return 0.0;
+ else
+ return Standard.Float'Value (Interfaces.C.Strings.Value (Ptr));
+ end if;
end Get_Value;