Hello community,

here is the log from the commit of package libqt5-qtbase for openSUSE:Factory 
checked in at 2013-11-29 07:02:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libqt5-qtbase (Old)
 and      /work/SRC/openSUSE:Factory/.libqt5-qtbase.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libqt5-qtbase"

Changes:
--------
--- /work/SRC/openSUSE:Factory/libqt5-qtbase/libqt5-qtbase.changes      
2013-11-13 13:50:13.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.libqt5-qtbase.new/libqt5-qtbase.changes 
2013-11-29 07:02:55.000000000 +0100
@@ -1,0 +2,6 @@
+Wed Nov 27 00:18:38 UTC 2013 - [email protected]
+
+- Added xcb_193.patch from upstream, for resolving SiC and BiC change
+  in xcb 1.9.2/3 (fdo#71502,fdo#71507,qtbug#34748)
+
+-------------------------------------------------------------------

New:
----
  xcb_193.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libqt5-qtbase.spec ++++++
--- /var/tmp/diff_new_pack.4B49qZ/_old  2013-11-29 07:02:56.000000000 +0100
+++ /var/tmp/diff_new_pack.4B49qZ/_new  2013-11-29 07:02:56.000000000 +0100
@@ -75,6 +75,8 @@
 Patch109:       libqt5-libtool-nodate.diff
 # PATCH-FIX-UPSTREAM qmake-add-usr-include.diff -- explicitly include 
/usr/include path
 Patch131:       qmake-add-usr-include.diff
+# PATCH-FIX-UPSTREAM xcb_193.patch -- For the 'oh, shit' xcb release 
(fdo#71502,fdo#71507,qtbug#34748)
+Patch132:       xcb_193.patch
 BuildRequires:  clucene-core-devel
 BuildRequires:  gstreamer-0_10-plugins-base-devel
 BuildRequires:  libicu-devel
@@ -112,6 +114,7 @@
 %patch4 -p1
 %patch109 -p1
 %patch131 -p1
+%patch132 -p1
 
 # be sure not to use them
 rm -r src/3rdparty/{libjpeg,freetype,libpng,zlib}


++++++ xcb_193.patch ++++++
From: Gatis Paeglis <[email protected]>
Date: Tue, 19 Nov 2013 14:07:25 +0000
Subject: Workaround source compatibility issue introduced by xcb 1.9.3
X-Git-Url: 
http://quickgit.kde.org/?p=qt%2Fqtbase.git&a=commitdiff&h=486889523c8fe15277e3148904509789a19d25fe
---
Workaround source compatibility issue introduced by xcb 1.9.3

Previous version of the struct:

typedef struct {
uint8_t  response_type;  /**< Type of the response */
uint8_t  pad0;           /**< Padding */
uint16_t sequence;       /**< Sequence number */
uint32_t length;
uint16_t event_type;
uint16_t pad1;
uint32_t pad[5];         /**< Padding */
uint32_t full_sequence;  /**< full sequence */
} xcb_ge_event_t;

New version of it:

typedef struct xcb_ge_event_t {
uint8_t  response_type; /**<  */
uint8_t  extension; /**<  */
uint16_t sequence; /**<  */
uint32_t length; /**<  */
uint16_t event_type; /**<  */
uint8_t  pad0[22]; /**<  */
uint32_t full_sequence; /**<  */
} xcb_ge_event_t;

Changes are:
- "pad0" became "extension"
- "pad1" and "pad" became "pad0"

More details in https://bugs.freedesktop.org/show_bug.cgi?id=71502

Task-number: QTBUG-34748
Change-Id: Ibd801c11510f75fa82d5c14346b95236142487ac
Reviewed-by: Uli Schlachter <[email protected]>
Reviewed-by: Lars Knoll <[email protected]>
---


--- a/src/plugins/platforms/xcb/qxcbconnection.cpp
+++ b/src/plugins/platforms/xcb/qxcbconnection.cpp
@@ -1749,10 +1749,26 @@
     return true;
 }
 
-bool QXcbConnection::xi2PrepareXIGenericDeviceEvent(xcb_ge_event_t *event, int 
opCode)
-{
-    // xGenericEvent has "extension" on the second byte, xcb_ge_event_t has 
"pad0".
-    if (event->pad0 == opCode) {
+// Starting from the xcb version 1.9.3 struct xcb_ge_event_t has changed:
+// - "pad0" became "extension"
+// - "pad1" and "pad" became "pad0"
+// New and old version of this struct share the following fields:
+// NOTE: API might change again in the next release of xcb in which case this 
comment will
+// need to be updated to reflect the reality.
+typedef struct qt_xcb_ge_event_t {
+    uint8_t  response_type;
+    uint8_t  extension;
+    uint16_t sequence;
+    uint32_t length;
+    uint16_t event_type;
+} qt_xcb_ge_event_t;
+
+bool QXcbConnection::xi2PrepareXIGenericDeviceEvent(xcb_ge_event_t *ev, int 
opCode)
+{
+    qt_xcb_ge_event_t *event = (qt_xcb_ge_event_t *)ev;
+    // xGenericEvent has "extension" on the second byte, the same is true for 
xcb_ge_event_t starting from
+    // the xcb version 1.9.3, prior to that it was called "pad0".
+    if (event->extension == opCode) {
         // xcb event structs contain stuff that wasn't on the wire, the 
full_sequence field
         // adds an extra 4 bytes and generic events cookie data is on the wire 
right after the standard 32 bytes.
         // Move this data back to have the same layout in memory as it was on 
the wire
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to