The call to gdk_win32_clipboard_request_contentformats() can return NULL even
without an error condition being hit (such as when the system clipboard is
empty), so check whether the returned GdkContentFormat pointer is not NULL
before calling gdk_clipboard_claim_remote(), which expects it to be not NULL,
otherwise we face a warning from that funtion and the subsequent
g_object_unref().
This at least partially fixes issue #4796.
cb->sequence_number = -1;
formats = gdk_win32_clipboard_request_contentformats (cb);
- gdk_clipboard_claim_remote (GDK_CLIPBOARD (cb), formats);
- gdk_content_formats_unref (formats);
- cb->sequence_number = GetClipboardSequenceNumber ();
+
+ if (formats != NULL)
+ {
+ gdk_clipboard_claim_remote (GDK_CLIPBOARD (cb), formats);
+ gdk_content_formats_unref (formats);
+ cb->sequence_number = GetClipboardSequenceNumber ();
+ }
}
static void