[Xcb] <op> is busted
Jeremy A. Kolb
jkolb at brandeis.edu
Mon Feb 7 20:55:12 PST 2005
<op> doesn't work with two <fieldref> values. I have:
<struct name="ScreenSize">
<field type="INT16" name="width" />
<field type="INT16" name="height" />
<field type="INT16" name="mwidth" />
<field type="INT16" name="mheight" />
</struct>
<struct name="RefreshRates">
<field type="CARD16" name="nRates" />
<list type="CARD16"
name="rates"><field_ref>nRates</field_ref></list>
</struct>
<request name="GetScreenInfo" opcode="5">
<field type="WINDOW" name="window" />
<reply>
<field type="CARD8" name="rotations" />
<field type="WINDOW" name="root" />
<field type="CARD32" name="timestamp" />
<field type="CARD32" name="config_timestamp" />
<field type="CARD16" name="nSizes" />
<field type="CARD16" name="sizeID" />
<field type="INT16" name="rotation" />
<field type="CARD16" name="rate" />
<field type="CARD16" name="info_len" />
<pad bytes="2" />
<list type="ScreenSize"
name="sizes"><fieldref>nSizes</fieldref></list>
<list type="RefreshRates" name="rates">
<op op="-">
<fieldref>info_len</fieldref>
<fieldref>nSizes</fieldref>
</op>
</list>
</reply>
</request>
The length of rates should be info_len-nSizes (this took forever to figure
out over irc). Anyways, the resulting c code doesn't compile. Can
someone fix this asap? Thanks.
Jeremy
More information about the xcb
mailing list