diff options
| author | Peter Harris <pharris@opentext.com> | 2014-01-14 14:48:22 -0500 |
|---|---|---|
| committer | Peter Harris <pharris@opentext.com> | 2014-01-21 15:24:19 -0500 |
| commit | d898fd39ad6c82207eb78666b2daad982dd757b5 (patch) | |
| tree | 51f7c1e14cab135c48a7c8b031362177ac4b0684 | |
| parent | ee02385ce1920ac7d0a450a8fccba60f9656d1fb (diff) | |
xkb: Use <pad align="4" /> in GetMap
There is a bug where lists of size other than one are automatically
aligned by c_client.py. So alignment_pad3 and 4 were aligning twice
and consuming too many bytes.
Rather than change the type to CARD8 and wrap the <op> in yet another
<op> to multiply by two, use the new <pad align> operation.
Reviewed-By: Ran Benita <ran234@gmail.com>
Tested-By: Ran Benita <ran234@gmail.com>
Signed-off-by: Peter Harris <pharris@opentext.com>
| -rw-r--r-- | src/xkb.xml | 60 |
1 files changed, 4 insertions, 56 deletions
diff --git a/src/xkb.xml b/src/xkb.xml index 1df0771..9ef4402 100644 --- a/src/xkb.xml +++ b/src/xkb.xml @@ -1351,20 +1351,7 @@ authorization from the authors. <list name="acts_rtrn_count" type="CARD8"> <fieldref>nKeyActions</fieldref> </list> - <list type="CARD8" name="alignment_pad"> - <op op="-"> - <op op="&"> - <op op="+"> - <fieldref>nKeyActions</fieldref> - <value>3</value> - </op> - <unop op="~"> - <value>3</value> - </unop> - </op> - <fieldref>nKeyActions</fieldref> - </op> - </list> + <pad align="4" /> <list name="acts_rtrn_acts" type="Action"> <fieldref>totalActions</fieldref> </list> @@ -1380,60 +1367,21 @@ authorization from the authors. <list name="vmods_rtrn" type="CARD8" mask="ModMask"> <popcount><fieldref>virtualMods</fieldref></popcount> </list> - <list type="CARD8" name="alignment_pad2"> - <op op="-"> - <op op="&"> - <op op="+"> - <popcount><fieldref>virtualMods</fieldref></popcount> - <value>3</value> - </op> - <unop op="~"> - <value>3</value> - </unop> - </op> - <popcount><fieldref>virtualMods</fieldref></popcount> - </op> - </list> + <pad align="4" /> </bitcase> <bitcase> <enumref ref="MapPart">ExplicitComponents</enumref> <list name="explicit_rtrn" type="SetExplicit"> <fieldref>totalKeyExplicit</fieldref> </list> - <list type="CARD16" name="alignment_pad3"> - <op op="-"> - <op op="&"> - <op op="+"> - <fieldref>totalKeyExplicit</fieldref> - <value>1</value> - </op> - <unop op="~"> - <value>1</value> - </unop> - </op> - <fieldref>totalKeyExplicit</fieldref> - </op> - </list> + <pad align="4" /> </bitcase> <bitcase> <enumref ref="MapPart">ModifierMap</enumref> <list name="modmap_rtrn" type="KeyModMap"> <fieldref>totalModMapKeys</fieldref> </list> - <list type="CARD16" name="alignment_pad4"> - <op op="-"> - <op op="&"> - <op op="+"> - <fieldref>totalModMapKeys</fieldref> - <value>1</value> - </op> - <unop op="~"> - <value>1</value> - </unop> - </op> - <fieldref>totalModMapKeys</fieldref> - </op> - </list> + <pad align="4" /> </bitcase> <bitcase> <enumref ref="MapPart">VirtualModMap</enumref> |
