Andy Ritger <[email protected]> writes:

> Is mi/mieq.c:mieqProcessInputEvents() expected to be reentrant?  Or should
> mieqProcessInputEvents() never be called in that situation?

It should never be re-entered; probably would be a good idea to check
for that and whinge loudly in the log.

> (g) Someone in the pScrnInfo->SwitchMode wrap chain calls RRTellChanged()
>     (in my case, it is the NVIDIA X driver, but I think many
>     drivers could be exposed to this through xf86SetSingleMode() ->
>     xf86RandR12TellChanged()) which calls UpdateCurrentTime().

This function needs to use UpdateCurrentTimeIf to avoid recursing.

> Making the 'event' variable in mieqProcessInputEvents() non-static
> avoids the FatalError() in FixKeyState(), but is it problematic to
> have the re-entered instance of mieqProcessInputEvents() process events
> from miEventQueue before the first instance of mieqProcessInputEvents()
> has completed processing of its current event?

Yeah, that's not a good plan.

-- 
[email protected]

Attachment: pgpa6PxNAGubt.pgp
Description: PGP signature

_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to