<div dir="ltr"><div><div><div><div><div><div>I tried to start some discussion on this topic previously, but it apparently didn't make it through the moderator, so I'm trying again having now joined the list.<br><br>
</div>I've recently taken an interest in the <a href="https://github.com/sebastianskejoe/gowl">gowl</a> implementation of the wayland protocol and noticed that the specification doesn't match the interface that gets generated by the wayland scanner.<br>
<br></div>If I attempt to code-gen gowl using the wayland.xml file the wl_registry bind interface is missing a couple arguments that weston expects, resulting in the following runtime error:<br>libwayland: message too short, object (2), message bind(usun)<br>
<br></div>However, the spec indicates a bind request signature of "un".<br><br></div>I tracked this down into some curious logic in the scanner and have been working on a patch to try and allow the corrected signature to be specified in the protocol.  Unfortunately this has become more interesting then I'd anticipated.<br>
<br></div>Attached is my naive attempt at resolving this issue.  I'm horrified by the string->interface lookup and the wl_registry_bind api change but I'm not sure what else one can do.  Any feedback or additional help would be appreciated.<br>
<br></div>Note that this patch applies to the 1.5.91 tagged commit and compiles cleanly (for wayland).  Weston didn't like having the lookup function defined in multiple files, so maybe there would be a better place to put such functionality.<br>
<div><br>Thanks,<br>Paul<br></div></div>