summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJason Rumney <jasonr@gnu.org>2009-02-08 15:34:38 +0000
committerJason Rumney <jasonr@gnu.org>2009-02-08 15:34:38 +0000
commitda881a89ab6d8bce2c796989850761a83d118de0 (patch)
treee4ed97da27d4b40f0c817ac9c52af7ac214af24f /src
parent7174ad1b955de6b7b54fb4fc10a2e950292968f7 (diff)
downloademacs-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.c13
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;
}
}