glx: handle spurious GLX_BufferSwapComplete events gracefully
Instead of simply aborting we now print out a warning, when a spurious GLX_BufferSwapComplete event is handled since it seems that people are coming across the problem (perhaps due to a buggy driver) and making apps crash in this situation is a bit extreme.
This commit is contained in:
parent
716ec82db8
commit
62ac3b312e
@ -82,8 +82,14 @@ clutter_backend_glx_handle_event (ClutterBackendX11 *backend_x11,
|
||||
|
||||
if (stage_x11->xwin == swap_complete_event->drawable)
|
||||
{
|
||||
g_assert (stage_glx->pending_swaps);
|
||||
stage_glx->pending_swaps--;
|
||||
if (G_UNLIKELY (stage_glx->pending_swaps == 0))
|
||||
{
|
||||
g_warning ("Spurious GLX_BufferSwapComplete event received for "
|
||||
"stage drawable = 0x%08lx",
|
||||
swap_complete_event->drawable);
|
||||
}
|
||||
else
|
||||
stage_glx->pending_swaps--;
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user