GNOME Bugzilla – Bug 730183
RFC: silence harmless critical
Last modified: 2018-05-02 16:07:19 UTC
When doing more than one simultaneous clipboard request, you get: Gdk-CRITICAL **: gdk_property_delete: assertion `window != NULL' failed In this scenario, an unvisible window is created in make_clipboard_widget() to handle the request. It will be destroyed in selection_received(), before _gtk_selection_notify() returns. Note: I haven't checked the behaviour on !win32 platforms.
Created attachment 276591 [details] [review] RFC: silence harmless critical
Can you provide a testcase that shows this problem ?
Created attachment 276686 [details] [review] tests: add clipboard set_with_data test
Created attachment 276687 [details] [review] tests: add clipboard multiple requests test
in gtk2, it seems a destroy widget will have widget->window == NULL, and now widget->window is in some DESTROY state. I haven't checked yet the same test with gtk2, but I am quite sure it will hit the assert() for the same reason. Now in gtk3/x11 gdk_property_delete() is a no-op when the window is destroyed. I am not sure what _gdk_win32_window_delete_property() is doing today since it seems to be lacking a similar check.
Created attachment 276750 [details] [review] Add clipboard test
Comment on attachment 276750 [details] [review] Add clipboard test This is the same test from adapted to run on windows with gtk2, it triggers the warning.
Review of attachment 276686 [details] [review]: looks fine
Review of attachment 276687 [details] [review]: Here, we will have to check for xsel in the path, and skip the test if it is not found.
(In reply to comment #9) > Review of attachment 276687 [details] [review]: > > Here, we will have to check for xsel in the path, and skip the test if it is > not found. yeah, perhaps I should write a small gtk helper instead.
for the suggested fix, I would prefer if we could make the win32 backend behave the same way as x11.
(In reply to comment #11) > for the suggested fix, I would prefer if we could make the win32 backend behave > the same way as x11. well, the suggested fix is for gtk2 branch only. How do you want to change it since NULL is passed as first argument to gdk_property_delete()?
Oh, I hadn't picked up on that detail. In that case, just push it.
We're moving to gitlab! As part of this move, we are moving bugs to NEEDINFO if they haven't seen activity in more than a year. If this issue is still important to you and still relevant with GTK+ 3.22 or master, please reopen it and we will migrate it to gitlab.
Not much memory of this, but it looks like the test could be reused somehow. Feel free to close otherwise.
This changed to some degree in GTK3 HEAD (there might still be warnings like this though), and GTK4 will completely drop properties.
-- GitLab Migration Automatic Message -- This bug has been migrated to GNOME's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/gtk/issues/490.