diff options
| author | Oscar Fuentes | 2016-01-23 14:11:29 +0100 |
|---|---|---|
| committer | Oscar Fuentes | 2016-01-23 14:18:46 +0100 |
| commit | 76045f7d6f654ea20e09412e5054f9159d1bb142 (patch) | |
| tree | c3b24adc9d3c7b121646542c29a4b57667ad40fc | |
| parent | c32f3bc4a383280587cf790b89f6c781d78cc42d (diff) | |
| download | emacs-76045f7d6f654ea20e09412e5054f9159d1bb142.tar.gz emacs-76045f7d6f654ea20e09412e5054f9159d1bb142.zip | |
Don't operate on menu bar of nonexistent frame
* src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
is valid before redisplaying its menu. Fixes bug#22438.
| -rw-r--r-- | src/xfns.c | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/src/xfns.c b/src/xfns.c index aad9680c4df..9624ac5d9ac 100644 --- a/src/xfns.c +++ b/src/xfns.c | |||
| @@ -6084,16 +6084,19 @@ Value is t if tooltip was open, nil otherwise. */) | |||
| 6084 | items is unmapped. Redisplay the menu manually... */ | 6084 | items is unmapped. Redisplay the menu manually... */ |
| 6085 | { | 6085 | { |
| 6086 | Widget w; | 6086 | Widget w; |
| 6087 | struct frame *f = SELECTED_FRAME (); | 6087 | struct frame *f = SELECTED_FRAME (); |
| 6088 | w = f->output_data.x->menubar_widget; | 6088 | if (FRAME_X_P (f) && FRAME_LIVE_P (f)) |
| 6089 | { | ||
| 6090 | w = f->output_data.x->menubar_widget; | ||
| 6089 | 6091 | ||
| 6090 | if (!DoesSaveUnders (FRAME_DISPLAY_INFO (f)->screen) | 6092 | if (!DoesSaveUnders (FRAME_DISPLAY_INFO (f)->screen) |
| 6091 | && w != NULL) | 6093 | && w != NULL) |
| 6092 | { | 6094 | { |
| 6093 | block_input (); | 6095 | block_input (); |
| 6094 | xlwmenu_redisplay (w); | 6096 | xlwmenu_redisplay (w); |
| 6095 | unblock_input (); | 6097 | unblock_input (); |
| 6096 | } | 6098 | } |
| 6099 | } | ||
| 6097 | } | 6100 | } |
| 6098 | #endif /* USE_LUCID */ | 6101 | #endif /* USE_LUCID */ |
| 6099 | } | 6102 | } |