[arch-commits] Commit in qt5/trunk (PKGBUILD kdebug-329174.patch)

Andrea Scarpino andrea at archlinux.org
Tue Jan 20 13:38:15 UTC 2015


    Date: Tuesday, January 20, 2015 @ 14:38:15
  Author: andrea
Revision: 229608

Handle SelectionClientClose in QXcbClipboard (KDEBUG#329174)

Added:
  qt5/trunk/kdebug-329174.patch
Modified:
  qt5/trunk/PKGBUILD

---------------------+
 PKGBUILD            |   50 ++++++++++++++++++++++++++++----------------------
 kdebug-329174.patch |   39 +++++++++++++++++++++++++++++++++++++++
 2 files changed, 67 insertions(+), 22 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2015-01-20 12:53:47 UTC (rev 229607)
+++ PKGBUILD	2015-01-20 13:38:15 UTC (rev 229608)
@@ -41,18 +41,20 @@
 groups=('qt' 'qt5')
 _pkgfqn="qt-everywhere-opensource-src-${pkgver}"
 source=("http://download.qt-project.org/official_releases/qt/${pkgver%.*}/${pkgver}/single/${_pkgfqn}.tar.xz"
-        'assistant.desktop' 'designer.desktop' 'linguist.desktop' 'qdbusviewer.desktop')
+        'assistant.desktop' 'designer.desktop' 'linguist.desktop' 'qdbusviewer.desktop'
+        'kdebug-329174.patch')
 md5sums=('21843b00ecde8956217faab391bc007b'
          'b2897dd6a2967bccf8f10e397aafee55'
          '9638a78e502719ef8fe5f8d10d0361a9'
          '188da8f4c87316e730ebf1c6217bf5a0'
-         '322b419b16c75d4de0ee7ad0a246caa1')
+         '322b419b16c75d4de0ee7ad0a246caa1'
+         'f69ac1589a661f232fb86ad32e293b28')
 
 prepare() {
   cd ${_pkgfqn}
 
   # Build qmake using Arch {C,LD}FLAGS
-  # This also sets default {C,XX,LD}FLAGS for projects built using qmake
+  # This also sets default {C,CXX,LD}FLAGS for projects built using qmake
   sed -i -e "s|^\(QMAKE_CFLAGS_RELEASE.*\)|\1 ${CFLAGS}|" \
     qtbase/mkspecs/common/gcc-base.conf
   sed -i -e "s|^\(QMAKE_LFLAGS_RELEASE.*\)|\1 ${LDFLAGS}|" \
@@ -64,6 +66,10 @@
   # in qtwebengine there are still a lot of relative calls which need a workaround
   mkdir "${srcdir}"/python2-path
   ln -s /usr/bin/python2 "${srcdir}"/python2-path/python
+
+  # Fixed in 5.4.1
+  cd qtbase
+  patch -p1 -i "${srcdir}"/kdebug-329174.patch
 }
 
 build() {
@@ -139,8 +145,8 @@
   install -D -m644 LGPL_EXCEPTION.txt \
     "${pkgdir}"/usr/share/licenses/${pkgname}/LGPL_EXCEPTION.txt
 
-  # Fix wrong path in prl files
-   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
+  find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
   # Fix wrong qmake path in pri file
@@ -161,7 +167,7 @@
   cd ${_pkgfqn}/qtconnectivity
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
@@ -177,7 +183,7 @@
   cd ${_pkgfqn}/qtdeclarative
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
@@ -215,7 +221,7 @@
   cd ${_pkgfqn}/qtenginio
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
@@ -231,7 +237,7 @@
   cd ${_pkgfqn}/qtxmlpatterns
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
@@ -266,7 +272,7 @@
   cd ${_pkgfqn}/qtmultimedia
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
@@ -304,7 +310,7 @@
   cd ${_pkgfqn}/qtlocation
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
@@ -320,7 +326,7 @@
   cd ${_pkgfqn}/qtquick1
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
@@ -353,7 +359,7 @@
   cd ${_pkgfqn}/qtscript
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
@@ -368,7 +374,7 @@
   cd ${_pkgfqn}/qtsensors
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
@@ -383,7 +389,7 @@
   cd ${_pkgfqn}/qtserialport
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
@@ -399,7 +405,7 @@
   cd ${_pkgfqn}/qtsvg
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
@@ -440,7 +446,7 @@
   install -m644 "${srcdir}"/{linguist,designer,assistant,qdbusviewer}.desktop \
     "${pkgdir}/usr/share/applications/"
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
@@ -464,7 +470,7 @@
   cd ${_pkgfqn}/qtwebkit
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
@@ -479,7 +485,7 @@
   cd ${_pkgfqn}/qtwayland
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
@@ -494,7 +500,7 @@
   cd ${_pkgfqn}/qtwebchannel
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 
@@ -521,7 +527,7 @@
   cd ${_pkgfqn}/qtwebsockets
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 }
@@ -533,7 +539,7 @@
   cd ${_pkgfqn}/qtx11extras
   make INSTALL_ROOT="${pkgdir}" install
 
-  # Fix wrong path in prl files
+  # Drop QMAKE_PRL_BUILD_DIR because reference the build dir
   find "${pkgdir}/usr/lib" -type f -name '*.prl' \
     -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
 

Added: kdebug-329174.patch
===================================================================
--- kdebug-329174.patch	                        (rev 0)
+++ kdebug-329174.patch	2015-01-20 13:38:15 UTC (rev 229608)
@@ -0,0 +1,39 @@
+From 6a7ee92b3958e3a3ebc16be15f8bd34217ec7bd2 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Martin=20Gr=C3=A4=C3=9Flin?= <mgraesslin at kde.org>
+Date: Wed, 10 Dec 2014 07:27:23 +0100
+Subject: [PATCH] Handle SelectionClientClose in QXcbClipboard
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+QXcbClipboard listens for subtype SelectionClientClose of Xfixes
+SelectionNotify event, but doesn't handle it. When the client holding
+the clipboard selection closes the Clipboard becomes empty and thus the
+change should be emitted.
+
+This fixes downstream KDE Bug #329174.
+
+Change-Id: I19fb8cfd7bd3b249c0bc6ca2a724a9aeeb05ac7e
+Reviewed-by: Jørgen Lind <jorgen.lind at theqtcompany.com>
+Reviewed-by: Aleix Pol Gonzalez <aleixpol at kde.org>
+---
+ src/plugins/platforms/xcb/qxcbclipboard.cpp |    3 ++-
+ 1 files changed, 2 insertions(+), 1 deletions(-)
+
+diff --git a/src/plugins/platforms/xcb/qxcbclipboard.cpp b/src/plugins/platforms/xcb/qxcbclipboard.cpp
+index 8b3893e..f56a29d 100644
+--- a/src/plugins/platforms/xcb/qxcbclipboard.cpp
++++ b/src/plugins/platforms/xcb/qxcbclipboard.cpp
+@@ -742,7 +742,8 @@ void QXcbClipboard::handleXFixesSelectionRequest(xcb_xfixes_selection_notify_eve
+             m_xClipboard[mode]->reset();
+         }
+         emitChanged(mode);
+-    }
++    } else if (event->subtype == XCB_XFIXES_SELECTION_EVENT_SELECTION_CLIENT_CLOSE)
++        emitChanged(mode);
+ }
+ 
+ 
+-- 
+1.7.1
+



More information about the arch-commits mailing list