diff options
author | Andrew Innes <andrewi@gnu.org> | 2001-09-30 21:55:04 +0000 |
---|---|---|
committer | Andrew Innes <andrewi@gnu.org> | 2001-09-30 21:55:04 +0000 |
commit | c30dce3d220798adf35352e1624ef2468ed98e03 (patch) | |
tree | d1a01ea00602cf957016db8f4c378d4ade8c1ef7 /src/w32menu.c | |
parent | 03be593186abcd1336c9102ebd286385f2c2acd0 (diff) | |
download | emacs-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.c | 7 |
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) { |