[xcb-proto] Backport 5a4e42f3 and d42d7918 to fix DRI2 and XKB, respectively.

Adam Jackson ajax at fedoraproject.org
Tue Sep 4 16:03:58 UTC 2012


commit 7ef26872564d5345a0e5fc9914f26c4eb6696532
Author: Adam Jackson <ajax at redhat.com>
Date:   Tue Sep 4 12:03:55 2012 -0400

    Backport 5a4e42f3 and d42d7918 to fix DRI2 and XKB, respectively.

 xcb-proto-1.7-dri2.patch |   44 +++++++++++++
 xcb-proto-1.7-xkb.patch  |  153 ++++++++++++++++++++++++++++++++++++++++++++++
 xcb-proto.spec           |   10 +++-
 3 files changed, 206 insertions(+), 1 deletions(-)
---
diff --git a/xcb-proto-1.7-dri2.patch b/xcb-proto-1.7-dri2.patch
new file mode 100644
index 0000000..fb743b7
--- /dev/null
+++ b/xcb-proto-1.7-dri2.patch
@@ -0,0 +1,44 @@
+From 5a4e42f37ac431df76f509b26329fd184790a36e Mon Sep 17 00:00:00 2001
+From: Chad Versace <chad.versace at linux.intel.com>
+Date: Mon, 04 Jun 2012 19:11:48 +0000
+Subject: dri2: Update to DRI2 1.4
+
+In DRI2 1.4, the DRI2GetParam request was added.
+
+Signed-off-by: Chad Versace <chad.versace at linux.intel.com>
+Signed-off-by: Julien Danjou <julien at danjou.info>
+---
+diff --git a/src/dri2.xml b/src/dri2.xml
+index 3af1600..508e4c1 100644
+--- a/src/dri2.xml
++++ b/src/dri2.xml
+@@ -28,7 +28,7 @@ authorization from the authors.
+ -->
+ 
+ <xcb header="dri2" extension-xname="DRI2" extension-name="DRI2"
+-  major-version="1" minor-version="3">
++  major-version="1" minor-version="4">
+   <import>xproto</import>
+ 
+   <enum name="Attachment">
+@@ -241,6 +241,18 @@ authorization from the authors.
+     <field type="CARD32" name="interval" />
+   </request>
+ 
++  <!-- Version 1.4 -->
++
++  <request name="GetParam" opcode="13">
++    <field type="DRAWABLE" name="drawable" />
++    <field type="CARD32" name="param" />
++    <reply>
++      <field type="BOOL" name="is_param_recognized" />
++      <field type="CARD32" name="value_hi" />
++      <field type="CARD32" name="value_lo" />
++    </reply>
++  </request>
++
+   <!-- Events -->
+ 
+   <event name="BufferSwapComplete" number="0">
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/xcb-proto-1.7-xkb.patch b/xcb-proto-1.7-xkb.patch
new file mode 100644
index 0000000..11a04a7
--- /dev/null
+++ b/xcb-proto-1.7-xkb.patch
@@ -0,0 +1,153 @@
+From d42d791806f8917f32e869f01e0895400bfb2688 Mon Sep 17 00:00:00 2001
+From: Daniel Stone <daniel at fooishbar.org>
+Date: Thu, 21 Jun 2012 11:40:02 +0000
+Subject: XKB: Fix broken events
+
+XKB events all have exactly the same event number - 0 (from the XKB
+event base).  Within this, they're all multiplexed by the xkbType field,
+which comes immediately after the event type field, before the sequence
+number.  Without this field, the events are pretty much useless, so add
+it manually.
+
+Signed-off-by: Daniel Stone <daniel at fooishbar.org>
+Reviewed-by: Uli Schlachter <psychon at znc.in>
+Signed-off-by: Julien Danjou <julien at danjou.info>
+---
+diff --git a/src/xkb.xml b/src/xkb.xml
+index e8f4c02..a6ef374 100644
+--- a/src/xkb.xml
++++ b/src/xkb.xml
+@@ -2593,7 +2593,9 @@ authorization from the authors.
+ 
+ 	<!-- Events -->
+ 
+-	<event name="NewKeyboardNotify" number="0">
++	<event name="NewKeyboardNotify" number="0" no-sequence-number="true">
++		<field name="xkbType" type="CARD8" />
++		<field name="sequence" type="CARD16" />
+ 		<field name="time" type="TIMESTAMP" />
+ 		<field name="deviceID" type="CARD8" />
+ 		<field name="oldDeviceID" type="CARD8" />
+@@ -2607,7 +2609,9 @@ authorization from the authors.
+ 		<pad bytes="14" />
+ 	</event>
+ 
+-	<event name="MapNotify" number="1">
++	<event name="MapNotify" number="1" no-sequence-number="true">
++		<field name="xkbType" type="CARD8" />
++		<field name="sequence" type="CARD16" />
+ 		<field name="time" type="TIMESTAMP" />
+ 		<field name="deviceID" type="CARD8" />
+ 		<field name="ptrBtnActions" type="CARD8" />
+@@ -2632,7 +2636,9 @@ authorization from the authors.
+ 		<pad bytes="2" />
+ 	</event>
+ 
+-	<event name="StateNotify" number="2">
++	<event name="StateNotify" number="2" no-sequence-number="true">
++		<field name="xkbType" type="CARD8" />
++		<field name="sequence" type="CARD16" />
+ 		<field name="time" type="TIMESTAMP" />
+ 		<field name="deviceID" type="CARD8" />
+ 		<field name="mods" type="CARD8" mask="ModMask" />
+@@ -2656,7 +2662,9 @@ authorization from the authors.
+ 		<field name="requestMinor" type="CARD8" />
+ 	</event>
+ 
+-	<event name="ControlsNotify" number="3">
++	<event name="ControlsNotify" number="3" no-sequence-number="true">
++		<field name="xkbType" type="CARD8" />
++		<field name="sequence" type="CARD16" />
+ 		<field name="time" type="TIMESTAMP" />
+ 		<field name="deviceID" type="CARD8" />
+ 		<field name="numGroups" type="CARD8" />
+@@ -2671,7 +2679,9 @@ authorization from the authors.
+ 		<pad bytes="4" />
+ 	</event>
+ 
+-	<event name="IndicatorStateNotify" number="4">
++	<event name="IndicatorStateNotify" number="4" no-sequence-number="true">
++		<field name="xkbType" type="CARD8" />
++		<field name="sequence" type="CARD16" />
+ 		<field name="time" type="TIMESTAMP" />
+ 		<field name="deviceID" type="CARD8" />
+ 		<pad bytes="3" />
+@@ -2680,7 +2690,9 @@ authorization from the authors.
+ 		<pad bytes="12" />
+ 	</event>
+ 
+-	<event name="IndicatorMapNotify" number="5">
++	<event name="IndicatorMapNotify" number="5" no-sequence-number="true">
++		<field name="xkbType" type="CARD8" />
++		<field name="sequence" type="CARD16" />
+ 		<field name="time" type="TIMESTAMP" />
+ 		<field name="deviceID" type="CARD8" />
+ 		<pad bytes="3" />
+@@ -2689,7 +2701,9 @@ authorization from the authors.
+ 		<pad bytes="12" />
+ 	</event>
+ 
+-	<event name="NamesNotify" number="6">
++	<event name="NamesNotify" number="6" no-sequence-number="true">
++		<field name="xkbType" type="CARD8" />
++		<field name="sequence" type="CARD16" />
+ 		<field name="time" type="TIMESTAMP" />
+ 		<field name="deviceID" type="CARD8" />
+ 		<pad bytes="1" />
+@@ -2709,7 +2723,9 @@ authorization from the authors.
+ 		<pad bytes="4" />
+ 	</event>
+ 
+-	<event name="CompatMapNotify" number="7">
++	<event name="CompatMapNotify" number="7" no-sequence-number="true">
++		<field name="xkbType" type="CARD8" />
++		<field name="sequence" type="CARD16" />
+ 		<field name="time" type="TIMESTAMP" />
+ 		<field name="deviceID" type="CARD8" />
+ 		<field name="changedGroups" type="CARD8" mask="SetOfGroup" />
+@@ -2719,7 +2735,9 @@ authorization from the authors.
+ 		<pad bytes="16" />
+ 	</event>
+ 
+-	<event name="BellNotify" number="8">
++	<event name="BellNotify" number="8" no-sequence-number="true">
++		<field name="xkbType" type="CARD8" />
++		<field name="sequence" type="CARD16" />
+ 		<field name="time" type="TIMESTAMP" />
+ 		<field name="deviceID" type="CARD8" />
+ 		<field name="bellClass" type="CARD8" enum="BellClassResult" />
+@@ -2733,7 +2751,9 @@ authorization from the authors.
+ 		<pad bytes="7" />
+ 	</event>
+ 
+-	<event name="ActionMessage" number="9">
++	<event name="ActionMessage" number="9" no-sequence-number="true">
++		<field name="xkbType" type="CARD8" />
++		<field name="sequence" type="CARD16" />
+ 		<field name="time" type="TIMESTAMP" />
+ 		<field name="deviceID" type="CARD8" />
+ 		<field name="keycode" type="KEYCODE" />
+@@ -2747,7 +2767,9 @@ authorization from the authors.
+ 		<pad bytes="10" />
+ 	</event>
+ 
+-	<event name="AccessXNotify" number="10">
++	<event name="AccessXNotify" number="10" no-sequence-number="true">
++		<field name="xkbType" type="CARD8" />
++		<field name="sequence" type="CARD16" />
+ 		<field name="time" type="TIMESTAMP" />
+ 		<field name="deviceID" type="CARD8" />
+ 		<field name="keycode" type="KEYCODE" />
+@@ -2757,7 +2779,9 @@ authorization from the authors.
+ 		<pad bytes="16" />
+ 	</event>
+ 
+-	<event name="ExtensionDeviceNotify" number="11">
++	<event name="ExtensionDeviceNotify" number="11" no-sequence-number="true">
++		<field name="xkbType" type="CARD8" />
++		<field name="sequence" type="CARD16" />
+ 		<field name="time" type="TIMESTAMP" />
+ 		<field name="deviceID" type="CARD8" />
+ 		<pad bytes="1" />
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/xcb-proto.spec b/xcb-proto.spec
index 84cadba..31e49f4 100644
--- a/xcb-proto.spec
+++ b/xcb-proto.spec
@@ -3,7 +3,7 @@
 
 Name:           xcb-proto
 Version:        1.7
-Release:        2%{?dist}
+Release:        3%{?dist}
 Summary:        XCB protocol descriptions
 
 Group:          Development/Libraries
@@ -12,6 +12,9 @@ URL:            http://xcb.freedesktop.org/
 Source0:        http://xcb.freedesktop.org/dist/%{name}-%{version}.tar.bz2
 BuildArch:      noarch
 
+Patch0:		xcb-proto-1.7-dri2.patch
+Patch1:		xcb-proto-1.7-xkb.patch
+
 BuildRequires:	python
 Requires:       pkgconfig
 
@@ -23,6 +26,8 @@ the protocol.
 
 %prep
 %setup -q
+%patch0 -p1 -b .dri2
+%patch1 -p1 -b .xkb
 
 %build
 # Bit of a hack to get the pc file in /usr/share, so we can be noarch.
@@ -46,6 +51,9 @@ rm -rf $RPM_BUILD_ROOT
 %{python_sitelib}/xcbgen
 
 %changelog
+* Tue Sep 04 2012 Adam Jackson <ajax at redhat.com> 1.7-3
+- Backport 5a4e42f3 and d42d7918 to fix DRI2 and XKB, respectively.
+
 * Sun Jul 22 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.7-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
 


More information about the scm-commits mailing list