[Xcb] [PATCH] Fix xcb-proto xml typos
Jeremy Kolb
jkolb at brandeis.edu
Sat Feb 18 18:26:20 PST 2006
Good catch. Compiling them didn't generate any errors or warnings so I
missed them. Maybe we should add something to the stylesheet to do
that. Also, xprint has not been fully tested.
Jeremy
Alp Toker wrote:
> Further to my previous mail ([ANNOUNCE] Xnb: X protocol library for
> .NET), attached is a patch to fix typos in the XCB protocol
> specifications that were found whilst writing Xnb:
>
> * The "bytes" attribute is spelt "byes" and "byte" in various places.
> * item elements in certain enums specify the value as CDATA, whereas
> they should be wrapped with the value tag.
>
> The patch has not been tested for correctness with XCB, but is trivially
> correct for Xnb. You should probably check your generated bindings
> before committing the patch.
>
>
> The authors of XCB should note that xprint.xml and glx.xml will continue
> to be invalid as long as they contain request replies with valueparams,
> which is not allowed by the XCB schema:
>
> XmlSchema error: Invalid start element: :valueparam XML URI:
> file:///home/alp/Projects/mono-svn/xnb/proto/xprint.xml . Line 217,
> Position 14.
>
> XmlSchema error: Invalid start element: :valueparam XML URI:
> file:///home/alp/Projects/mono-svn/xnb/proto/glx.xml . Line 244,
> Position 5.
>
> Once the patch has been applied and the issues with xprint.xml and
> glx.xml are resolved, I'll be able to remove all forked specification
> files from the Xnb sources.
>
>
> Also, the question of enum values in the specifications remains. Certain
> languages allow typesafe enumerations and flags, and it would be great
> to maintain this information in one place (xcb-proto) rather than
> requiring individual consumers of xcb-proto to provide additional metadata.
>
> Any XCB hackers care to comment on how the XCB protocol specification
> format could be extended to accommodate this?
>
>
> ------------------------------------------------------------------------
>
> Index: src/extensions/glx.xml
> ===================================================================
> RCS file: /cvs/xcb/xcb-proto/src/extensions/glx.xml,v
> retrieving revision 1.9
> diff -u -r1.9 glx.xml
> --- src/extensions/glx.xml 10 Feb 2006 19:29:38 -0000 1.9
> +++ src/extensions/glx.xml 19 Feb 2006 00:45:52 -0000
> @@ -282,7 +282,7 @@
> <pad bytes="1" />
> <pad bytes="4" />
> <field type="CARD32" name="n" />
> - <pad byes="16" />
> + <pad bytes="16" />
> </reply>
> </request>
>
> @@ -367,7 +367,7 @@
> <reply>
> <pad bytes="1" />
> <field type="CARD32" name="context_tag" />
> - <pad byes="20" />
> + <pad bytes="20" />
> </reply>
> </request>
>
> Index: src/extensions/xprint.xml
> ===================================================================
> RCS file: /cvs/xcb/xcb-proto/src/extensions/xprint.xml,v
> retrieving revision 1.2
> diff -u -r1.2 xprint.xml
> --- src/extensions/xprint.xml 18 Jul 2005 03:03:43 -0000 1.2
> +++ src/extensions/xprint.xml 19 Feb 2006 00:45:54 -0000
> @@ -50,36 +50,36 @@
>
> <!-- "PrintGetDocumentData" -->
> <enum name="GetDoc">
> - <item name="Finished">0</item>
> - <item name="SecondConsumer">1</item>
> + <item name="Finished"><value>0</value></item>
> + <item name="SecondConsumer"><value>1</value></item>
> </enum>
>
> <!-- Event Mask ("PrintSelectInput") -->
> <enum name="EvMask">
> - <item name="NoEventMask">0x00000000</item>
> - <item name="PrintMask">0x00000001</item>
> - <item name="AttributeMask">0x00000002</item>
> + <item name="NoEventMask"><value>0x00000000</value></item>
> + <item name="PrintMask"><value>0x00000001</value></item>
> + <item name="AttributeMask"><value>0x00000002</value></item>
> </enum>
>
> <!-- "PrintNotify" detail -->
> <enum name="Detail">
> - <item name="StartJobNotify">1</item>
> - <item name="EndJobNotify">2</item>
> - <item name="StartDocNotify">3</item>
> - <item name="EndDocNotify">4</item>
> - <item name="StartPageNotify">5</item>
> - <item name="EndPageNotify">6</item>
> + <item name="StartJobNotify"><value>1</value></item>
> + <item name="EndJobNotify"><value>2</value></item>
> + <item name="StartDocNotify"><value>3</value></item>
> + <item name="EndDocNotify"><value>4</value></item>
> + <item name="StartPageNotify"><value>5</value></item>
> + <item name="EndPageNotify"><value>6</value></item>
> </enum>
>
> <!-- "AttributeNotify" detail -->
> <enum name="Attr">
> - <item name="JobAttr">1</item>
> - <item name="DocAttr">2</item>
> - <item name="PageAttr">3</item>
> - <item name="PrinterAttr">4</item>
> - <item name="ServerAttr">5</item>
> - <item name="MediumAttr">6</item>
> - <item name="SpoolerAttr">7</item>
> + <item name="JobAttr"><value>1</value></item>
> + <item name="DocAttr"><value>2</value></item>
> + <item name="PageAttr"><value>3</value></item>
> + <item name="PrinterAttr"><value>4</value></item>
> + <item name="ServerAttr"><value>5</value></item>
> + <item name="MediumAttr"><value>6</value></item>
> + <item name="SpoolerAttr"><value>7</value></item>
> </enum>
>
>
> Index: src/extensions/xvmc.xml
> ===================================================================
> RCS file: /cvs/xcb/xcb-proto/src/extensions/xvmc.xml,v
> retrieving revision 1.1
> diff -u -r1.1 xvmc.xml
> --- src/extensions/xvmc.xml 12 Jan 2006 16:34:13 -0000 1.1
> +++ src/extensions/xvmc.xml 19 Feb 2006 00:45:55 -0000
> @@ -77,7 +77,7 @@
> <field type="CARD16" name="width_actual" />
> <field type="CARD16" name="height_actual" />
> <field type="CARD32" name="flags_return" />
> - <pad byte="20" />
> + <pad bytes="20" />
> <list type="CARD32" name="priv_data" />
> </reply>
> </request>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Xcb mailing list
> Xcb at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/xcb
More information about the Xcb
mailing list