[PATCH] weston: Don't ask for EGL depth buffer if not needed

Kristian Høgsberg hoegsberg at gmail.com
Thu Mar 22 21:51:25 PDT 2012

On Thu, Mar 22, 2012 at 4:01 PM, Bill Spitzak <spitzak at gmail.com> wrote:
> Kristian Hoegsberg wrote:
>> It's not getting ignored, it's on my list.  I read the thread and
>> obviously there's a serious bug in connection.c that you and others
>> are hitting (and I think I've seen it myself).  This just can't be the
>> right fix.  If you're just typing into the terminal, there's no way
>> the protocol buffer would fill up before we send it so you're not
>> hitting this case.  Also, we don't flush the data without also sending
>> the fds, so you won't get into a case where there are fds left but no
>> data in the buffer.  And if that happened, the fix isn't to send an
>> empty data buffer with the fds, as that doesn't work, there always has
>> to be a regular data payload (as I'm writing this, I can't actually
>> find a man page that states this...).
>> Anyway, I'll take a look and see if I can reproduce it.  If you can
>> post a full backtrace and maybe try to valgrind it, that would be
>> helpful.
>> thanks,
>> Kristian
> Thanks it is good to know. I did suspect that such an obvious bug would not
> be in there and you have reason to believe this function should never be
> called when the data buffer is empty and want to find out what is really
> wrong.
> The terminal does not crash, instead the compositor gets a protocol error
> and then it kills the client.
> This patch does fix it and I see no sign of a message getting lost or a
> extra one being created, when I put debug statements in both client and
> compositor.
> I did get a stack dump from the point where this if statement is taken, but
> I don't have it now. I will reproduce it tonight and send it. It was inside
> the attach() call in wayland_client.c however.

Should be fixed in wayland master now.


More information about the wayland-devel mailing list