diff --git a/gdk/x11/gdkdisplay-x11.c b/gdk/x11/gdkdisplay-x11.c index e658780994..1477a75d8b 100644 --- a/gdk/x11/gdkdisplay-x11.c +++ b/gdk/x11/gdkdisplay-x11.c @@ -919,7 +919,10 @@ gdk_x11_display_translate_event (GdkEventTranslator *translator, event->selection.window = window; event->selection.selection = gdk_x11_xatom_to_atom_for_display (display, xevent->xselectionrequest.selection); event->selection.target = gdk_x11_xatom_to_atom_for_display (display, xevent->xselectionrequest.target); - event->selection.property = gdk_x11_xatom_to_atom_for_display (display, xevent->xselectionrequest.property); + if (xevent->xselectionrequest.property == None) + event->selection.property = event->selection.target; + else + event->selection.property = gdk_x11_xatom_to_atom_for_display (display, xevent->xselectionrequest.property); if (xevent->xselectionrequest.requestor != None) event->selection.requestor = gdk_x11_window_foreign_new_for_display (display, xevent->xselectionrequest.requestor);