cogl-winsys-glx: Fix frame notification race/leak [performance]
If a second set_{sync,complete}_pending
was queued before the idle
handler had flushed the first then one of them would be forgotten.
It would stay queued forever and never emitted as a notification.
This could happen repeatedly causing a slow leak. But worse still,
clutter-stage-cogl
would then have pending_swaps
permanently stuck
above zero preventing the presentation timing logic from being used.
The problem is that a boolean can only count to one, but in some cases (triple buffering, whether intentional or accidental #334 (closed)) we need it to count to two. So just change booleans to integers and count properly.
Edited by Jeff Fortin