summaryrefslogtreecommitdiff
path: root/src/w32menu.c
diff options
context:
space:
mode:
authorAndrew Innes <andrewi@gnu.org>2001-09-30 21:55:04 +0000
committerAndrew Innes <andrewi@gnu.org>2001-09-30 21:55:04 +0000
commitc30dce3d220798adf35352e1624ef2468ed98e03 (patch)
treed1a01ea00602cf957016db8f4c378d4ade8c1ef7 /src/w32menu.c
parent03be593186abcd1336c9102ebd286385f2c2acd0 (diff)
downloademacs-c30dce3d220798adf35352e1624ef2468ed98e03.tar.gz
emacs-c30dce3d220798adf35352e1624ef2468ed98e03.tar.bz2
emacs-c30dce3d220798adf35352e1624ef2468ed98e03.zip
(set_frame_menubar): Take into account that
f->menu_bar_vector can be nil, and not a vector. From Ken Raeburn <raeburn@gnu.org>.
Diffstat (limited to 'src/w32menu.c')
-rw-r--r--src/w32menu.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/w32menu.c b/src/w32menu.c
index ca0ed0b6320..8021dece951 100644
--- a/src/w32menu.c
+++ b/src/w32menu.c
@@ -1355,12 +1355,13 @@ set_frame_menubar (f, first_time, deep_p)
inhibit_garbage_collection ();
/* Save the frame's previous menu bar contents data. */
- bcopy (XVECTOR (f->menu_bar_vector)->contents, previous_items,
- previous_menu_items_used * sizeof (Lisp_Object));
+ if (previous_menu_items_used)
+ bcopy (XVECTOR (f->menu_bar_vector)->contents, previous_items,
+ previous_menu_items_used * sizeof (Lisp_Object));
/* Fill in the current menu bar contents. */
menu_items = f->menu_bar_vector;
- menu_items_allocated = XVECTOR (menu_items)->size;
+ menu_items_allocated = VECTORP (menu_items) ? ASIZE (menu_items) : 0;
init_menu_items ();
for (i = 0; i < XVECTOR (items)->size; i += 4)
{