From: Paul Eggert Date: Thu, 12 May 2011 06:46:26 +0000 (-0700) Subject: * xmenu.c (set_frame_menubar): Don't mishandle vectors with no nils. X-Git-Tag: emacs-pretest-24.0.90~104^2~618^2~239^2~23^2~15 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=d89eb65e6d3a46ef9d04a950ee24352c146e4ea0;p=emacs.git * xmenu.c (set_frame_menubar): Don't mishandle vectors with no nils. --- diff --git a/src/ChangeLog b/src/ChangeLog index da468d47db3..10b3ef2d6f2 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2011-05-12 Paul Eggert + + * xmenu.c (set_frame_menubar): Don't mishandle vectors with no nils. + 2011-05-11 Paul Eggert * xterm.c: Use EMACS_INT for Emacs modifiers, and int for X modifiers. diff --git a/src/xmenu.c b/src/xmenu.c index 2a4359fa84a..898aade06c2 100644 --- a/src/xmenu.c +++ b/src/xmenu.c @@ -922,7 +922,7 @@ set_frame_menubar (FRAME_PTR f, int first_time, int deep_p) #endif Lisp_Object items; widget_value *wv, *first_wv, *prev_wv = 0; - EMACS_UINT i, last_i = 0; + EMACS_UINT i, last_i; int *submenu_start, *submenu_end; int *submenu_top_level_items, *submenu_n_panes; @@ -1021,8 +1021,6 @@ set_frame_menubar (FRAME_PTR f, int first_time, int deep_p) { Lisp_Object key, string, maps; - last_i = i; - key = XVECTOR (items)->contents[4 * i]; string = XVECTOR (items)->contents[4 * i + 1]; maps = XVECTOR (items)->contents[4 * i + 2]; @@ -1039,6 +1037,7 @@ set_frame_menubar (FRAME_PTR f, int first_time, int deep_p) submenu_end[i] = menu_items_used; } + last_i = i; finish_menu_items (); /* Convert menu_items into widget_value trees