diff --git a/gdk/win32/gdkdevice-virtual.c b/gdk/win32/gdkdevice-virtual.c index 2ed341f106..3a972855db 100644 --- a/gdk/win32/gdkdevice-virtual.c +++ b/gdk/win32/gdkdevice-virtual.c @@ -269,7 +269,7 @@ gdk_device_virtual_grab (GdkDevice *device, g_clear_object (&_gdk_win32_grab_cursor); } - _gdk_win32_grab_cursor = cursor; + _gdk_win32_grab_cursor = (cursor == NULL) ? NULL : g_object_ref (cursor); if (_gdk_win32_grab_cursor != NULL) SetCursor (GDK_WIN32_CURSOR (_gdk_win32_grab_cursor)->hcursor);