mirror of
https://github.com/brl/mutter.git
synced 2025-04-09 03:39:39 +00:00
events: Bypass both gtk+ and the compositor for SelectionClear
We can't do any further processing after this since we have already freed most of our structures including the MetaDisplay.
This commit is contained in:
parent
87bec99a0a
commit
1169e104cb
@ -1530,21 +1530,6 @@ handle_other_xevent (MetaDisplay *display,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SelectionClear:
|
|
||||||
/* do this here instead of at end of function
|
|
||||||
* so we can return
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* FIXME: Clearing display->current_time here makes no sense to
|
|
||||||
* me; who put this here and why?
|
|
||||||
*/
|
|
||||||
display->current_time = CurrentTime;
|
|
||||||
|
|
||||||
process_selection_clear (display, event);
|
|
||||||
/* Note that processing that may have resulted in
|
|
||||||
* closing the display... so return right away.
|
|
||||||
*/
|
|
||||||
return FALSE;
|
|
||||||
case SelectionRequest:
|
case SelectionRequest:
|
||||||
process_selection_request (display, event);
|
process_selection_request (display, event);
|
||||||
break;
|
break;
|
||||||
@ -1866,6 +1851,17 @@ meta_display_handle_xevent (MetaDisplay *display,
|
|||||||
goto out;
|
goto out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (event->type == SelectionClear)
|
||||||
|
{
|
||||||
|
/* Do this here so we can return without any further
|
||||||
|
* processing. */
|
||||||
|
process_selection_clear (display, event);
|
||||||
|
/* Note that processing that may have resulted in
|
||||||
|
* closing the display... */
|
||||||
|
bypass_gtk = bypass_compositor = TRUE;
|
||||||
|
goto out;
|
||||||
|
}
|
||||||
|
|
||||||
out:
|
out:
|
||||||
if (!bypass_compositor)
|
if (!bypass_compositor)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user