summaryrefslogtreecommitdiff
path: root/src/fltk-widgets-groups-windows.adb
diff options
context:
space:
mode:
authorJed Barber <jjbarber@y7mail.com>2017-05-07 12:04:33 +1000
committerJed Barber <jjbarber@y7mail.com>2017-05-07 12:04:33 +1000
commitdf843c7fe48f33d25981d03975e670a3e7159031 (patch)
tree32ad270bf18d5bedadd255a42c0b013332609488 /src/fltk-widgets-groups-windows.adb
parentc2c5985b130e02b970cb6bf88c9a81e6e72c6646 (diff)
Further code cleanup
Diffstat (limited to 'src/fltk-widgets-groups-windows.adb')
-rw-r--r--src/fltk-widgets-groups-windows.adb13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/fltk-widgets-groups-windows.adb b/src/fltk-widgets-groups-windows.adb
index f217403..54b29c4 100644
--- a/src/fltk-widgets-groups-windows.adb
+++ b/src/fltk-widgets-groups-windows.adb
@@ -71,6 +71,8 @@ package body FLTK.Widgets.Groups.Windows is
procedure Draw_Hook
(U : in System.Address)
is
+ package Window_Convert is new System.Address_To_Access_Conversions (Window'Class);
+
Ada_Window : access Window'Class :=
Window_Convert.To_Pointer (U);
begin
@@ -92,12 +94,13 @@ package body FLTK.Widgets.Groups.Windows is
procedure Finalize
(This : in out Window) is
begin
- Finalize (Group (This));
- if This.Void_Ptr /= System.Null_Address then
- if This in Window then
- free_fl_window (This.Void_Ptr);
- end if;
+ if This in Window and then
+ This.Void_Ptr /= System.Null_Address
+ then
+ This.Clear;
+ free_fl_window (This.Void_Ptr);
end if;
+ Finalize (Group (This));
end Finalize;