diff options
author | Jason Rumney <jasonr@gnu.org> | 2009-02-08 15:34:38 +0000 |
---|---|---|
committer | Jason Rumney <jasonr@gnu.org> | 2009-02-08 15:34:38 +0000 |
commit | da881a89ab6d8bce2c796989850761a83d118de0 (patch) | |
tree | e4ed97da27d4b40f0c817ac9c52af7ac214af24f /src | |
parent | 7174ad1b955de6b7b54fb4fc10a2e950292968f7 (diff) | |
download | emacs-da881a89ab6d8bce2c796989850761a83d118de0.tar.gz |
(w32_hide_hourglass): Handle case where frame
disappeared while hourglass was displayed. (Bug #2193)
Diffstat (limited to 'src')
-rw-r--r-- | src/w32fns.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/w32fns.c b/src/w32fns.c index 70964cb8667..16649cce2cb 100644 --- a/src/w32fns.c +++ b/src/w32fns.c @@ -5279,9 +5279,18 @@ w32_hide_hourglass () { struct frame *f = x_window_to_frame (&one_w32_display_info, hourglass_hwnd); + if (f) + f->output_data.w32->hourglass_p = 0; + else + /* If frame was deleted, restore to selected frame's cursor. */ + f = SELECTED_FRAME (); + + if (FRAME_W32_P (f)) + SetCursor (f->output_data.w32->current_cursor); + else + /* No cursors on non GUI frames - restore to stock arrow cursor. */ + SetCursor (w32_load_cursor (IDC_ARROW)); - f->output_data.w32->hourglass_p = 0; - SetCursor (f->output_data.w32->current_cursor); hourglass_shown_p = 0; } } |