XInitThreads in library constructor breaks Motif!

Alan Coopersmith alan.coopersmith at oracle.com
Sun Oct 30 23:08:50 UTC 2022


On 10/29/22 19:00, Po Lu wrote:
> Motif assumes that you can call functions that lock the display inside
> XCheckIfEvent as it never calls XInitThreads itself.  It also never uses
> threads.

It was never up to Motif to decide whether or not to call XInitThreads()
- that decision was up to the applications, and if Motif assumed no
application would ever do that, it was buggy and incompatible with such
applications.

https://gitlab.freedesktop.org/xorg/lib/libx11/-/merge_requests/150 is
a proposed solution to the problem, but has not generated any interest
in testing it or moving it forward, suggesting either everyone is
building with the --disable-thread-safety-constructor option or is
using correctly written software that does not make such assumptions.

-- 
         -Alan Coopersmith-                 alan.coopersmith at oracle.com
          Oracle Solaris Engineering - https://blogs.oracle.com/solaris


More information about the xorg-devel mailing list