In mysterious way(land)s#
Thu, 21 Mar 2013 13:29:35 +0000
Why are our bind
messages to wl_registry
erroring out?
15:19 < daniels> yeah, wlregistrybind is a special case - i think it's the one non-autogenerated marshaller we have 15:32 < daniels> actually no, sorry, i'm lying through my teeth 15:32 < daniels> it's no longer autogenerated 15:32 < daniels> but the parser expands newid to interface + version + id 15:33 < daniels> it used to be hand-written, but is now autogenerated 15:33 < daniels> http://cgit.freedesktop.org/wayland/wayland/tree/src/scanner.c#n614 16:28 < jekstrand> danb: It is a somewhat-special case. Basically, every time there's a newid that does not have any type information specified, two aditional pieces of information (interface name and version) get added. 16:29 < jekstrand> danb: That really should be documented, but it's not. I had to grep through the scanner.c file to find it all.
Armed with this additional info the fix was fairly straightforward: I augmented the XML parsing/protocol generation to stick an additional pair of arguments into each message that contains a new_id and no interface.
Thanks to both daniels and jekstrand on irc for clearing it up.