Mercurial > emacs
comparison src/xmenu.c @ 13654:645e14e39a2b
(set_frame_menubar): When called with deep_p == 0,
that invalidates the previous f->menu_bar_vector.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sun, 26 Nov 1995 20:50:52 +0000 |
parents | ddf90bfd3744 |
children | 4d2bf17e7631 |
comparison
equal
deleted
inserted
replaced
13653:acde2327c000 | 13654:645e14e39a2b |
---|---|
1652 | 1652 |
1653 for (i = 0; i < previous_menu_items_used; i++) | 1653 for (i = 0; i < previous_menu_items_used; i++) |
1654 if (menu_items_used == i | 1654 if (menu_items_used == i |
1655 || (previous_items[i] != XVECTOR (menu_items)->contents[i])) | 1655 || (previous_items[i] != XVECTOR (menu_items)->contents[i])) |
1656 break; | 1656 break; |
1657 if (i == menu_items_used && i == previous_menu_items_used) | 1657 if (i == menu_items_used && i == previous_menu_items_used && i != 0) |
1658 { | 1658 { |
1659 free_menubar_widget_value_tree (first_wv); | 1659 free_menubar_widget_value_tree (first_wv); |
1660 menu_items = Qnil; | 1660 menu_items = Qnil; |
1661 | 1661 |
1662 return; | 1662 return; |
1702 prev_wv->next = wv; | 1702 prev_wv->next = wv; |
1703 else | 1703 else |
1704 first_wv->contents = wv; | 1704 first_wv->contents = wv; |
1705 prev_wv = wv; | 1705 prev_wv = wv; |
1706 } | 1706 } |
1707 | |
1708 /* Forget what we thought we knew about what is in the | |
1709 detailed contents of the menu bar menus. | |
1710 Changing the top level always destroys the contents. */ | |
1711 f->menu_bar_items_used = 0; | |
1707 } | 1712 } |
1708 | 1713 |
1709 /* Create or update the menu bar widget. */ | 1714 /* Create or update the menu bar widget. */ |
1710 | 1715 |
1711 BLOCK_INPUT; | 1716 BLOCK_INPUT; |