-
Notifications
You must be signed in to change notification settings - Fork 121
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
wl_pointer interface ends up in a message queue. #79
Comments
|
This is an off-by-one read. the opcode is 5, but there are just four events in |
Err, five events, I mean. |
This was with glutin 0.6, which presumably uses an old version of this lib, so feel free to close if this is known. |
Glutin 0.6 indeed uses an old version of wayland-client, however such a bug seems to related to the code generating the interfaces, which has not really changed since. First of all, it is perfectly normal for the
Thanks for the report, I'll dig that. |
hmm, wait, I read that too quickly.... I guess I'll need to go dig into the source of |
Okay, I get what you meant with "off by one" : it's from here https://cgit.freedesktop.org/wayland/wayland/tree/src/wayland-client.c#n1239 right ? |
Was this reproduced without Mesa ? |
Anyway having here an opcode number greater than the one we expected means that the compositor sent us an invalid content, probably believing we requested a greater version of the interface than we actually did... Either the compositor is buggy, or my lib is. And the C lib blindly trusts the compositor on this, which does not help. |
As you have an RR trace, can you check the value of |
(rr) p *proxy->object.interface |
ooooh. Ok, yeah, The old version of my crate didn't use the versionned interface. So yeah, this bug will be hard to debug, and likely not reproduced in the new version of the crate. I'll keep this issue open for now, it can give us some insight regarding #75 |
I'll close this, as it relates to an old version than #75 is fixed. |
I was debugging a crash similar to #75, and ended up with a segfault where the
wl_pointer
interface ends up in an event queue (so when trying to read the signature wayland crashes).Does this ring any bells? I have an RR trace and it was a simple glutin example (just clearing colors).
The text was updated successfully, but these errors were encountered: