[Xcb] [Bug 44198] ../../src/xcb_conn.c:155: int write_vec(xcb_connection_t *, struct iovec **, int *): Assertion `!c->out.queue_len' failed.

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Thu Dec 29 17:42:44 PST 2011


https://bugs.freedesktop.org/show_bug.cgi?id=44198

--- Comment #2 from Josh Triplett <josh at freedesktop.org> 2011-12-29 17:42:44 PST ---
(In reply to comment #1)
> This assertion seems to be a bug in Xlib instead of xcb. I added the following
> assert() to xcb_writev() (since xcb_take_socket() has to be called before it
> may be used) and now this assert triggers instead of the one from the summary.
> 
>  assert(c->out.return_socket != NULL); 
> 
> Should I send this assert() as a git-formatted patch to the mailing list?
> Should this bug be reassigned to Xlib?

By all means reassign this bug to Xlib.  However, please don't add assertions
to XCB that trigger on programs using Xlib; we've learned from previous
assertions that people really don't like having their programs throw assertion
failures, and when the assertions come from XCB they blame XCB rather than
blaming Xlib or their programs.  Let's have them correctly blame Xlib instead
this time. :)

That said, thanks for your further diagnosis of the problem.  From what you
found, it definitely sounds like Xlib tried to call xcb_writev without owning
the socket, which should never happen.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the Xcb mailing list