diff options
| author | Eli Zaretskii | 2013-09-21 17:53:04 +0300 |
|---|---|---|
| committer | Eli Zaretskii | 2013-09-21 17:53:04 +0300 |
| commit | f0177f86f745ef86357214b110f9d98e4ed63b7a (patch) | |
| tree | 85f8cbb3a930a39ea84bb02637279b7a783d37eb /src/nsmenu.m | |
| parent | e11a3bd1d1848d0a3a2ac21a48360eb628127ed9 (diff) | |
| download | emacs-f0177f86f745ef86357214b110f9d98e4ed63b7a.tar.gz emacs-f0177f86f745ef86357214b110f9d98e4ed63b7a.zip | |
Fix infinite loop in menu input due to block_input.
Diffstat (limited to 'src/nsmenu.m')
| -rw-r--r-- | src/nsmenu.m | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/nsmenu.m b/src/nsmenu.m index f9cd511efe9..697329df675 100644 --- a/src/nsmenu.m +++ b/src/nsmenu.m | |||
| @@ -833,6 +833,8 @@ ns_menu_show (struct frame *f, int x, int y, bool for_click, bool keymaps, | |||
| 833 | ptrdiff_t specpdl_count = SPECPDL_INDEX (); | 833 | ptrdiff_t specpdl_count = SPECPDL_INDEX (); |
| 834 | widget_value *wv, *first_wv = 0; | 834 | widget_value *wv, *first_wv = 0; |
| 835 | 835 | ||
| 836 | block_input (); | ||
| 837 | |||
| 836 | p.x = x; p.y = y; | 838 | p.x = x; p.y = y; |
| 837 | 839 | ||
| 838 | /* now parse stage 2 as in ns_update_menubar */ | 840 | /* now parse stage 2 as in ns_update_menubar */ |
| @@ -1035,6 +1037,7 @@ ns_menu_show (struct frame *f, int x, int y, bool for_click, bool keymaps, | |||
| 1035 | popup_activated_flag = 0; | 1037 | popup_activated_flag = 0; |
| 1036 | [[FRAME_NS_VIEW (SELECTED_FRAME ()) window] makeKeyWindow]; | 1038 | [[FRAME_NS_VIEW (SELECTED_FRAME ()) window] makeKeyWindow]; |
| 1037 | 1039 | ||
| 1040 | unblock_input (); | ||
| 1038 | return tem; | 1041 | return tem; |
| 1039 | } | 1042 | } |
| 1040 | 1043 | ||