diff --git a/ChangeLog b/ChangeLog index b46ed6483..53ba73d97 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2003-03-16 Rob Adams + + * window.c (meta_window_show_menu): Free old window menu if it + already exists so we don't end up with more than one. Fix for + #108392. + 2003-03-14 Rob Adams * contraints.c (get_outermost_screen_positions): Don't try to diff --git a/src/window.c b/src/window.c index 1ae7be066..f5bf5c4cd 100644 --- a/src/window.c +++ b/src/window.c @@ -5490,6 +5490,13 @@ meta_window_show_menu (MetaWindow *window, MetaMenuOp insensitive; MetaWindowMenu *menu; + if (window->display->window_menu) + { + meta_ui_window_menu_free (window->display->window_menu); + window->display->window_menu = NULL; + window->display->window_with_menu = NULL; + } + ops = 0; insensitive = 0;