From: Jason Rumney Date: Sat, 23 Feb 2002 00:01:34 +0000 (+0000) Subject: (menubar_selection_callback): Free the menu and X-Git-Tag: ttn-vms-21-2-B4~16525 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=71f6b2951950a0a42dce3a62796080f606d50f6e;p=emacs.git (menubar_selection_callback): Free the menu and clear the menu_command_in_progress flag. --- diff --git a/src/w32menu.c b/src/w32menu.c index ba15125731b..ee1bbc54209 100644 --- a/src/w32menu.c +++ b/src/w32menu.c @@ -159,6 +159,7 @@ static void single_keymap_panes (); static void single_menu_item (); static void list_of_panes (); static void list_of_items (); +void w32_free_menu_strings (HWND); /* This holds a Lisp vector that holds the results of decoding the keymaps or alist-of-alists that specify a menu. @@ -1035,11 +1036,19 @@ menubar_selection_callback (FRAME_PTR f, void * client_data) buf.arg = entry; kbd_buffer_store_event (&buf); + /* Free memory used by owner-drawn and help-echo strings. */ + w32_free_menu_strings (FRAME_W32_WINDOW (f)); + f->output_data.w32->menu_command_in_progress = 0; + f->output_data.w32->menubar_active = 0; return; } i += MENU_ITEMS_ITEM_LENGTH; } } + /* Free memory used by owner-drawn and help-echo strings. */ + w32_free_menu_strings (FRAME_W32_WINDOW (f)); + f->output_data.w32->menu_command_in_progress = 0; + f->output_data.w32->menubar_active = 0; } /* Allocate a widget_value, blocking input. */