<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_ASSIGNED "
title="ASSIGNED - _XReadEvents is treating EAGAIN as a fatal error instead of just trying again"
href="https://bugs.freedesktop.org/show_bug.cgi?id=92652#c9">Comment # 9</a>
on <a class="bz_bug_link
bz_status_ASSIGNED "
title="ASSIGNED - _XReadEvents is treating EAGAIN as a fatal error instead of just trying again"
href="https://bugs.freedesktop.org/show_bug.cgi?id=92652">bug 92652</a>
from <span class="vcard"><a class="email" href="mailto:jeremyhu@freedesktop.org" title="Jeremy Huddleston Sequoia <jeremyhu@freedesktop.org>"> <span class="fn">Jeremy Huddleston Sequoia</span></a>
</span></b>
<pre>Looks like the WM is calling XKillClient():
(lldb) bt
* thread #3: tid = 0x20aab8, function: CloseDownConnection , stop reason =
breakpoint 5.1
* frame #0: 0x0000000101f44780 X11.bin`CloseDownConnection
frame #1: 0x0000000101e1f804 X11.bin`CloseDownClient + 484
frame #2: 0x0000000101e3a84a X11.bin`ProcKillClient + 314
frame #3: 0x0000000101e1ebf4 X11.bin`Dispatch + 1172
And digging into quartz-wm's code, we see:
- (void) do_close:(Time)timestamp
{
TRACE ();
if (_does_wm_delete_window)
{
XEvent e;
e.xclient.type = ClientMessage;
e.xclient.window = _id;
e.xclient.message_type = atoms.wm_protocols;
e.xclient.format = 32;
e.xclient.data.l[0] = atoms.wm_delete_window;
e.xclient.data.l[1] = timestamp;
XSendEvent (x_dpy, _id, False, 0, &e);
}
else
{
XKillClient (x_dpy, _id);
}
}</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
</ul>
</body>
</html>