On Sun, Jul 16, 2017 at 11:16:25PM -0700, Jasper St. Pierre wrote:
> (Coming into this one late)
>
> When I first wrote xdg-shell, I maintained that attaching a NULL buffer
> should be illegal since it has no benefit compared to destroying the
> surface, but compositors might not reset all data at
(Coming into this one late)
When I first wrote xdg-shell, I maintained that attaching a NULL buffer
should be illegal since it has no benefit compared to destroying the
surface, but compositors might not reset all data attached to the surface,
making a weird exception where clients depend on bugs
If a timer_func causes the removal or addition of a different timer, our tmp
pointer from the list_for_each_safe may not be valid anymore.
This was triggered by having the debounce code trigger a middle button state
change, which caused that timer to be cancelled.
Signed-off-by: Peter Hutterer
-
Race conditions may happen where code that cancels a timer is called just
as that timer triggers. If we cancel a timer, we assume that we've put the
code into a state where the timer firing will trigger a bug.
This could be observed with the middle button code if the release event was
held back ju