From 588fa3ece8be6038debaeed12136dbd09cee52b7 Mon Sep 17 00:00:00 2001 From: Miciah Dashiel Butler Masters Date: Mon, 19 Jun 2006 11:07:03 +0000 Subject: [PATCH] Properly deselect the main menu instead of crashing In send_kbd_event, use deselect_mainmenu to get rid of the main menu instead of delete_window. This fixes bug 747. --- src/bfu/menu.c | 2 +- src/bfu/menu.h | 1 + src/viewer/text/view.c | 3 ++- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/bfu/menu.c b/src/bfu/menu.c index ac4269a5..12a777ed 100644 --- a/src/bfu/menu.c +++ b/src/bfu/menu.c @@ -64,7 +64,7 @@ static void display_mainmenu(struct terminal *term, struct menu *menu); static void set_menu_selection(struct menu *menu, int pos); -static void +void deselect_mainmenu(struct terminal *term, struct menu *menu) { menu->selected = -1; diff --git a/src/bfu/menu.h b/src/bfu/menu.h index 1cb301f9..aa076dbe 100644 --- a/src/bfu/menu.h +++ b/src/bfu/menu.h @@ -175,5 +175,6 @@ add_to_menu(struct menu_item **mi, unsigned char *text, unsigned char *rtext, void do_menu(struct terminal *, struct menu_item *, void *, int); void do_menu_selected(struct terminal *, struct menu_item *, void *, int, int); void do_mainmenu(struct terminal *, struct menu_item *, void *, int); +void deselect_mainmenu(struct terminal *term, struct menu *menu); #endif diff --git a/src/viewer/text/view.c b/src/viewer/text/view.c index 963c15ce..9bc53375 100644 --- a/src/viewer/text/view.c +++ b/src/viewer/text/view.c @@ -1171,7 +1171,8 @@ quit: win = ses->tab->term->windows.next; win->handler(win, ev); if (ses->tab->term->windows.next == win) { - delete_window(win); + deselect_mainmenu(win->term, win->data); + print_screen_status(ses); get_kbd_modifier(ev) |= KBD_MOD_ALT; return NULL;