summaryrefslogtreecommitdiff
path: root/src/drivers/X11/Fl_X11_Window_Driver.cxx
diff options
context:
space:
mode:
authorTimothy Lee <timothy.ty.lee@gmail.com>2025-04-11 21:17:19 +1000
committerAlbrecht Schlosser <albrechts.fltk@online.de>2025-04-18 18:15:06 +0200
commit002b69f8fe90108faacaf2f728814fe52ff35095 (patch)
treee57c219bcab7d67f7b0e3141d57bb1b414171ab2 /src/drivers/X11/Fl_X11_Window_Driver.cxx
parent219c623b4b822e1a6ccc524a184c49ad838c6647 (diff)
Fix "heap-use-after-free" in resize_after_screen_change() (#1248)
When a native window is destroyed, make sure the callback to Fl_WinAPI_Window_Driver::resize_after_screen_change() is removed. Added by Albrecht-S: Thanks for the original fix to Timothy Lee (@timothytylee). src/drivers/X11/Fl_X11_Window_Driver.cxx: equivalent fix for X11 as discussed on GitHub PR #1248
Diffstat (limited to 'src/drivers/X11/Fl_X11_Window_Driver.cxx')
-rw-r--r--src/drivers/X11/Fl_X11_Window_Driver.cxx1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/drivers/X11/Fl_X11_Window_Driver.cxx b/src/drivers/X11/Fl_X11_Window_Driver.cxx
index b7e5da1ee..ee844aa03 100644
--- a/src/drivers/X11/Fl_X11_Window_Driver.cxx
+++ b/src/drivers/X11/Fl_X11_Window_Driver.cxx
@@ -58,6 +58,7 @@ Fl_X11_Window_Driver::Fl_X11_Window_Driver(Fl_Window *win)
Fl_X11_Window_Driver::~Fl_X11_Window_Driver()
{
+ Fl::remove_timeout(resize_after_screen_change, pWindow);
if (shape_data_) {
delete shape_data_->effective_bitmap_;
delete shape_data_;