Bug 1625250 Comment 11 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

https://searchfox.org/mozilla-central/rev/72e3388f74458d369af4f6cdbaeaacb719523b8c/toolkit/xre/nsGDKErrorHandler.cpp#94
was meant to translate the minor code to something human readable.
I wonder why that is not involved here.

However minor code 2 is X_ShmDetach.

Gecko's use of MIT-SHM is through libxcb.  IIRC errors in such use should not be reported via libX11's handler, as appears to be happening here.

GDK also sometimes use MIT-SHM, through libX11 I assume, but errors are usually caught.  That mechanism to catch errors is broken if XSetErrorHandler() is used on another thread.

IIRC there were also some races involving GDK X11 code if libX11 was used on another thread in any way, but I don't recall the way that is expected to manifest.
https://searchfox.org/mozilla-central/rev/72e3388f74458d369af4f6cdbaeaacb719523b8c/toolkit/xre/nsGDKErrorHandler.cpp#94
was meant to translate the minor code to something human readable.
I wonder why that is not involved here.

However minor code 2 is X_ShmDetach.

Gecko's use of MIT-SHM is through libxcb.  IIRC errors in such use should not be reported via libX11's handler, as appears to be happening here.

GDK also sometimes use MIT-SHM, through libX11 I assume, but errors are usually caught.  That mechanism to catch errors is broken if XSetErrorHandler() is used on another thread.

IIRC there were also some races involving GDK X11 code if GDK's X11 Display was used on another thread in any way, but I don't recall the way that is expected to manifest.
https://searchfox.org/mozilla-central/rev/72e3388f74458d369af4f6cdbaeaacb719523b8c/toolkit/xre/nsGDKErrorHandler.cpp#94
was meant to translate the minor code to something human readable.
I wonder why that is not involved here.

However minor code 2 is X_ShmDetach.  (See /usr/share/X11/XErrorDB)

Gecko's use of MIT-SHM is through libxcb.  IIRC errors in such use should not be reported via libX11's handler, as appears to be happening here.

GDK also sometimes use MIT-SHM, through libX11 I assume, but errors are usually caught.  That mechanism to catch errors is broken if XSetErrorHandler() is used on another thread.

IIRC there were also some races involving GDK X11 code if GDK's X11 Display was used on another thread in any way, but I don't recall the way that is expected to manifest.

Back to Bug 1625250 Comment 11