[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#850567: jessie-pu: package qtbase-opensource-src/5.3.2+dfsg-4+deb8u2



Package: release.debian.org
Severity: normal
Tags: jessie
User: release.debian.org@packages.debian.org
Usertags: pu

Dear Release team,

I want to request a stable update for qtbase-opensource-src to fix two bugs:

* #805265 (Sporadic segfault on exit in QNetworkConfigurationManagerPrivate::
  pollEngines()) — backport of a one-line fix from Qt 5.5.

* #775398 / #847665 (QSystemTrayIcon not working on XFCE and MATE) —
  backport of a six-lines fix from Qt 5.4.2.

The debdiff is attached.

--
Dmitry Shachnev
diff -Nru qtbase-opensource-src-5.3.2+dfsg/debian/changelog qtbase-opensource-src-5.3.2+dfsg/debian/changelog
--- qtbase-opensource-src-5.3.2+dfsg/debian/changelog	2015-05-19 19:56:43.000000000 +0300
+++ qtbase-opensource-src-5.3.2+dfsg/debian/changelog	2017-01-07 22:23:58.000000000 +0300
@@ -1,3 +1,15 @@
+qtbase-opensource-src (5.3.2+dfsg-4+deb8u2) jessie; urgency=medium
+
+  [ Dmitry Shachnev ]
+  * Backport upstream change (networkconfig_prevent_bad_deref.patch) to
+    prevent bad-ptrs deref in QNetworkConfigurationManagerPrivate.
+    Closes: #805265.
+  * Backport upstream change to fix X11 tray icons on some desktops
+    (xcb_delay_showing_tray_icon_window_until_it_is_embedded.patch).
+    Closes: #775398, #847665.
+
+ -- Dmitry Shachnev <mitya57@debian.org>  Sat, 07 Jan 2017 22:09:33 +0300
+
 qtbase-opensource-src (5.3.2+dfsg-4+deb8u1) stable-proposed-updates; urgency=medium
 
   [ Dmitry Shachnev ]
diff -Nru qtbase-opensource-src-5.3.2+dfsg/debian/patches/networkconfig_prevent_bad_deref.patch qtbase-opensource-src-5.3.2+dfsg/debian/patches/networkconfig_prevent_bad_deref.patch
--- qtbase-opensource-src-5.3.2+dfsg/debian/patches/networkconfig_prevent_bad_deref.patch	1970-01-01 03:00:00.000000000 +0300
+++ qtbase-opensource-src-5.3.2+dfsg/debian/patches/networkconfig_prevent_bad_deref.patch	2017-01-07 21:27:12.000000000 +0300
@@ -0,0 +1,15 @@
+Description: prevent bad-ptrs deref in QNetworkConfigurationManagerPrivate
+Origin: upstream, http://code.qt.io/cgit/qt/qtbase.git/commit/?id=3f0f707d4b898a96
+Bug: https://bugs.debian.org/805265
+Last-Update: 2015-11-16
+
+--- a/src/network/bearer/qnetworkconfigmanager_p.cpp
++++ b/src/network/bearer/qnetworkconfigmanager_p.cpp
+@@ -83,6 +83,7 @@
+     QMutexLocker locker(&mutex);
+ 
+     qDeleteAll(sessionEngines);
++    sessionEngines.clear();
+     if (bearerThread)
+         bearerThread->quit();
+ }
diff -Nru qtbase-opensource-src-5.3.2+dfsg/debian/patches/series qtbase-opensource-src-5.3.2+dfsg/debian/patches/series
--- qtbase-opensource-src-5.3.2+dfsg/debian/patches/series	2015-05-19 19:54:43.000000000 +0300
+++ qtbase-opensource-src-5.3.2+dfsg/debian/patches/series	2017-01-07 21:27:12.000000000 +0300
@@ -4,6 +4,8 @@
 gnukfreebsd.diff
 fix_bug_in_internal_comparison_operator.patch
 fix_imagehandlers_cves.diff
+networkconfig_prevent_bad_deref.patch
+xcb_delay_showing_tray_icon_window_until_it_is_embedded.patch
 
 # Patches that need to be upstreamed
 fix_sparc_atomics.patch
diff -Nru qtbase-opensource-src-5.3.2+dfsg/debian/patches/xcb_delay_showing_tray_icon_window_until_it_is_embedded.patch qtbase-opensource-src-5.3.2+dfsg/debian/patches/xcb_delay_showing_tray_icon_window_until_it_is_embedded.patch
--- qtbase-opensource-src-5.3.2+dfsg/debian/patches/xcb_delay_showing_tray_icon_window_until_it_is_embedded.patch	1970-01-01 03:00:00.000000000 +0300
+++ qtbase-opensource-src-5.3.2+dfsg/debian/patches/xcb_delay_showing_tray_icon_window_until_it_is_embedded.patch	2017-01-07 21:27:12.000000000 +0300
@@ -0,0 +1,37 @@
+Description: xcb: delay showing tray icon window until it is embedded
+ Otherwise there is a race condition: when the tray implementation
+ gets around to embedding the window, if it was already shown,
+ it will be unmapped, embedded, and then remapped. Some tray
+ implementations will resize the tray icon to 1 pixel wide in
+ that case. We also never want to show a window that was intended
+ for the tray in any other location, so it's better that it remain
+ invisible until we are sure it is embedded.
+Origin: upstream, https://code.qt.io/cgit/qt/qtbase.git/commit/?id=612953a626ec21b8
+Bug: https://bugs.debian.org/775398
+Bug: https://bugs.debian.org/847665
+Last-Update: 2016-12-26
+
+--- a/src/plugins/platforms/xcb/qxcbwindow.cpp
++++ b/src/plugins/platforms/xcb/qxcbwindow.cpp
+@@ -701,6 +701,9 @@
+     if (connection()->time() != XCB_TIME_CURRENT_TIME)
+         updateNetWmUserTime(connection()->time());
+ 
++    if (window()->objectName() == QLatin1String("QSystemTrayIconSysWindow"))
++        return; // defer showing until XEMBED_EMBEDDED_NOTIFY
++
+     Q_XCB_CALL(xcb_map_window(xcb_connection(), m_window));
+ 
+     if (QGuiApplication::modalWindow() == window())
+@@ -2130,7 +2133,10 @@
+     switch (event->data.data32[1]) {
+     case XEMBED_WINDOW_ACTIVATE:
+     case XEMBED_WINDOW_DEACTIVATE:
++        break;
+     case XEMBED_EMBEDDED_NOTIFY:
++        Q_XCB_CALL(xcb_map_window(xcb_connection(), m_window));
++        m_screen->windowShown(this);
+         break;
+     case XEMBED_FOCUS_IN:
+         Qt::FocusReason reason;
+

Attachment: signature.asc
Description: PGP signature


Reply to: