diff options
author | Tor Lillqvist <tml@iki.fi> | 2003-12-07 06:56:30 +0000 |
---|---|---|
committer | Tor Lillqvist <tml@src.gnome.org> | 2003-12-07 06:56:30 +0000 |
commit | 4e4748bc3785309ae021f3b25aa3fe8a1b48c95f (patch) | |
tree | e9bfb9d03315a39b3fc5433d958c4cfd2f02a520 /gdk | |
parent | 05f3e9b9fb3f78071b7a71d5b3417073e19b41c9 (diff) | |
download | gtk+-4e4748bc3785309ae021f3b25aa3fe8a1b48c95f.tar.gz |
If we already have a pointer grab active with a grab cursor set, destroy
2003-12-07 Tor Lillqvist <tml@iki.fi>
* gdk/win32/gdkevents-win32.c (gdk_pointer_grab): If we already
have a pointer grab active with a grab cursor set, destroy that
cursor to avoid a GDI resource leak. (#128410, Tim Evans)
Diffstat (limited to 'gdk')
-rw-r--r-- | gdk/win32/gdkevents-win32.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gdk/win32/gdkevents-win32.c b/gdk/win32/gdkevents-win32.c index df6673d627..76ccb20e19 100644 --- a/gdk/win32/gdkevents-win32.c +++ b/gdk/win32/gdkevents-win32.c @@ -549,6 +549,14 @@ gdk_pointer_grab (GdkWindow *window, if (return_val == GDK_GRAB_SUCCESS) { p_grab_window = window; + + if (p_grab_cursor != NULL) + { + if (GetCursor () == p_grab_cursor) + SetCursor (NULL); + DestroyCursor (p_grab_cursor); + } + p_grab_cursor = hcursor; if (p_grab_cursor != NULL) |