summaryrefslogtreecommitdiff
path: root/amiga/gui.c
diff options
context:
space:
mode:
authorChris Young <chris@unsatisfactorysoftware.co.uk>2012-10-31 20:50:22 +0000
committerChris Young <chris@unsatisfactorysoftware.co.uk>2012-10-31 20:50:22 +0000
commitefbfbbc96732ba7b0b8f526b07c776908c79533b (patch)
tree11b32c201b648c1139ea152ec4503a1373371878 /amiga/gui.c
parent116cd6aa435a0ef81724825993c22190476e15ef (diff)
downloadnetsurf-efbfbbc96732ba7b0b8f526b07c776908c79533b.tar.gz
netsurf-efbfbbc96732ba7b0b8f526b07c776908c79533b.tar.bz2
Fix a serious crash that occurs if the underlying window is closed during a hook function invoked from it.
Diffstat (limited to 'amiga/gui.c')
-rwxr-xr-xamiga/gui.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/amiga/gui.c b/amiga/gui.c
index 15ac1f553..37f054776 100755
--- a/amiga/gui.c
+++ b/amiga/gui.c
@@ -1927,6 +1927,16 @@ void ami_handle_msg(void)
ami_update_throbber(gwin, true);
refresh_throbber = FALSE;
}
+
+ if(ami_menu_window_close)
+ {
+ if(ami_menu_window_close == AMI_MENU_WINDOW_CLOSE_ALL)
+ ami_quit_netsurf();
+ else
+ ami_close_all_tabs(ami_menu_window_close);
+
+ ami_menu_window_close = NULL;
+ }
}
void ami_gui_appicon_remove(struct gui_window_2 *gwin)
@@ -2276,6 +2286,8 @@ void ami_quit_netsurf(void)
}
} while(node = nnode);
+
+ win_destroyed = true;
}
if(IsMinListEmpty(window_list))