From b488b2c9d0c2581d04a9b84f72f9dc6003518e09 Mon Sep 17 00:00:00 2001 From: ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> Date: Wed, 27 Mar 2019 12:33:00 +0100 Subject: Add further checks to avoid null pointer. --- src/Fl_Screen_Driver.cxx | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/Fl_Screen_Driver.cxx b/src/Fl_Screen_Driver.cxx index 43dbc144d..c3f62c03e 100644 --- a/src/Fl_Screen_Driver.cxx +++ b/src/Fl_Screen_Driver.cxx @@ -383,8 +383,11 @@ void Fl_Screen_Driver::transient_scale_display(float f, int nscreen) win_and_widget *data = new win_and_widget; data->win = win; data->widget = Fl::focus(); - if (data->widget && data->widget->top_window()->user_data() == &transient_scale_display) { - data->widget = 0; + if (data->widget) { + Fl_Window *top = data->widget->top_window(); + if (!top || top->user_data() == &transient_scale_display) { + data->widget = 0; + } } win->show(); Fl::add_timeout(1, (Fl_Timeout_Handler)del_transient_window, data); // delete after 1 sec -- cgit v1.2.3