[neon/qt/qtbase/Neon/release] debian: Cherry-pick patch fixes from salsa experimental

Jonathan Esk-Riddell null at kde.org
Mon May 23 11:08:25 BST 2022


Git commit 655bd3fa346294cce8660170c29bd9e7ecc25ed3 by Jonathan Esk-Riddell, on behalf of Carlos De Maine.
Committed on 23/05/2022 at 10:08.
Pushed by jriddell into branch 'Neon/release'.

Cherry-pick patch fixes from salsa experimental

M  +143  -0    debian/changelog
M  +5    -5    debian/patches/CVE-2022-25255.diff
D  +0    -113  debian/patches/fix-invalid-pointer-return-with-QGridLayout.diff
M  +1    -1    debian/patches/fix_recursion_crash.diff
D  +0    -19   debian/patches/gcc-11-qtconcurrentthreadengine.diff
M  +0    -1    debian/patches/series

https://invent.kde.org/neon/qt/qtbase/commit/655bd3fa346294cce8660170c29bd9e7ecc25ed3

diff --git a/debian/changelog b/debian/changelog
index c9099e5..91521d5 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -4,6 +4,149 @@ qtbase-opensource-src (5.15.4+dfsg-0neon) UNRELEASED; urgency=medium
 
  -- Jonathan Riddell <jr at jriddell.org>  Tue, 17 May 2022 17:53:57 +0100
 
+  [ Dmitry Shachnev ]
+  * New upstream release.
+  * Drop patches that are included in the new release:
+    - fix-invalid-pointer-return-with-QGridLayout.diff
+    - gcc-11-qtconcurrentthreadengine.diff
+  * Refresh other patches.
+
+ -- Debian Qt/KDE Maintainers <debian-qt-kde at lists.debian.org>  Thu, 12 May 2022 23:59:17 +0300
+
+
+  [ Andrea Pappacoda ]
+  * Backport upstream patch to fix qtconcurrentthreadengine.h with GCC 11.
+    - Closes: #1008391
+
+  [ Dmitry Shachnev ]
+  * Backport upstream patch to fix parsing include inside enum (LP: #1968074).
+
+ -- Dmitry Shachnev <mitya57 at debian.org>  Thu, 07 Apr 2022 18:50:52 +0300
+
+qtbase-opensource-src (5.15.3+dfsg-1) experimental; urgency=medium
+
+  * New upstream release.
+  * Update debian/watch for new file names.
+  * Drop patches that are included in the new release:
+    - xcb_screens_uaf.patch
+    - qnam_connect_memory_leak.diff
+    - qiodevice_readline_memory.diff
+  * Remove most of gcc_11_limits.diff, only one change left.
+  * Refresh other patches.
+  * Update debian/copyright.
+  * Bump ABI version to qtbase-abi-5-15-3.
+  * Update symbols files from the current build logs.
+  * Exclude one more RFC file from the tarball.
+  * Stop adding -Wl,--as-needed explicitly.
+
+ -- Dmitry Shachnev <mitya57 at debian.org>  Fri, 04 Mar 2022 21:00:06 +0300
+
+qtbase-opensource-src (5.15.2+dfsg-15) unstable; urgency=medium
+
+  * Backport upstream changes to improve support for OpenSSL 3.0.
+    - Don't hardcode libssl version in Depends, fill it dynamically.
+  * Replace -ffile-prefix-map in qmodule.pri.
+  * Backport upstream patch to make QProcess not search for executables in
+    CWD unless explicitly told so (CVE-2022-25255).
+  * Update some Lintian overrides.
+
+ -- Dmitry Shachnev <mitya57 at debian.org>  Tue, 22 Feb 2022 00:00:28 +0300
+
+qtbase-opensource-src (5.15.2+dfsg-14) unstable; urgency=medium
+
+  * Backport four upstream commits to fix massive memory consumption when
+    rendering specially crafted SVG files (CVE-2021-38593, LP: #1950193).
+  * Update symbols files from buildds’ logs.
+  * Override some source-is-missing and unpack-message-for-orig warnings.
+
+ -- Dmitry Shachnev <mitya57 at debian.org>  Sun, 28 Nov 2021 17:12:50 +0300
+
+qtbase-opensource-src (5.15.2+dfsg-13) unstable; urgency=medium
+
+  [ Lu YaNing ]
+  * Backport upstream patch to fix recursion crash when calling
+    setStyleSheet with `qproperty-styleSheet`: fix_recursion_crash.diff.
+
+  [ Dmitry Shachnev ]
+  * Backport upstream patch to treat MYSQL_FIELD as read-only, to fix issues
+    with MariaDB server 10.6 (closes: #999595).
+  * Update symbols files from buildds’ and the current build logs.
+  * Bump Standards-Version to 4.6.0, no changes needed.
+
+ -- Dmitry Shachnev <mitya57 at debian.org>  Sun, 14 Nov 2021 16:34:39 +0300
+
+qtbase-opensource-src (5.15.2+dfsg-12) unstable; urgency=medium
+
+  * Add a patch to properly cast types for EGL X11 tests (Closes: #994906).
+
+ -- Lisandro Damián Nicanor Pérez Meyer <lisandro at debian.org>  Thu, 23 Sep 2021 10:02:33 -0300
+
+qtbase-opensource-src (5.15.2+dfsg-11) unstable; urgency=medium
+
+  * Apply multi-arch hints.
+    + qtbase5-doc, qtbase5-doc-dev, qtbase5-doc-html: Add Multi-Arch: foreign.
+
+  [ Lisandro Damián Nicanor Pérez Meyer ]
+  * Backport upstream patch
+    xcb_add_a_timeout_control_when_reading_INCR_property.diff in order to fix
+    timestamp issue on QXcbConnection,
+    https://bugreports.qt.io/browse/QTBUG-56595
+
+ -- Lisandro Damián Nicanor Pérez Meyer <lisandro at debian.org>  Wed, 22 Sep 2021 15:07:55 -0300
+
+qtbase-opensource-src (5.15.2+dfsg-10) unstable; urgency=medium
+
+  [ Lu Yaning ]
+  * Restore fix-misplacement-of-placeholder-text-in-QLineEdit.diff.
+  * Backport upstream patch to fix the regression with placement of
+    placeholder text in QLineEdits with action icons.
+
+  [ Dmitry Shachnev ]
+  * Backport upstream patch to fix icon display on checkable QPushButtons
+    with Fusion style (closes: #991255).
+  * Backport upstream patch to remove MySQL version checks, which led to
+    wrong conclusions with MariaDB Connector ≥ 3.2.
+  * Backport upstream patch to fix QTextFormat::FullWidthSelection for
+    right-to-left text layouts.
+
+ -- Dmitry Shachnev <mitya57 at debian.org>  Sun, 15 Aug 2021 21:32:57 +0300
+
+qtbase-opensource-src (5.15.2+dfsg-9) unstable; urgency=medium
+
+  * Revert adding fix-misplacement-of-placeholder-text-in-QLineEdit.diff.
+    Unfortunately it causes a regression (see QTBUG-94824).
+
+ -- Dmitry Shachnev <mitya57 at debian.org>  Fri, 02 Jul 2021 18:58:04 +0300
+
+qtbase-opensource-src (5.15.2+dfsg-8) unstable; urgency=medium
+
+  [ Lu Yaning ]
+  * Backport upstream patch to fix misplacement of placeholder text in
+    QLineEdit with RTL content.
+
+  [ Dmitry Shachnev ]
+  * Remove the qmimeprovider.cpp part of mime_globs.diff. It is unrelated
+    to the original purpose of that patch, and causes various problems
+    (closes: #989255, #989744, #990129).
+
+ -- Dmitry Shachnev <mitya57 at debian.org>  Mon, 28 Jun 2021 20:38:59 +0300
+
+qtbase-opensource-src (5.15.2+dfsg-7) unstable; urgency=medium
+
+  [ Lu Yaning ]
+  * Backport upstream patch to fix invalid pointer return with
+    QGridLayout::itemAt(-1): fix-invalid-pointer-return-with-QGridLayout.diff
+
+ -- Lisandro Damián Nicanor Pérez Meyer <lisandro at debian.org>  Thu, 03 Jun 2021 09:55:29 -0300
+
+qtbase-opensource-src (5.15.2+dfsg-6) unstable; urgency=medium
+
+  * Backport upstream patch to adjust QMimeDatabase behavior (LP: #1857824).
+  * Make qtbase5-dev break qt5-default (see #976389, LP: #1920130).
+qtbase-opensource-src (5.15.3+dfsg-2) experimental; urgency=medium
+
+ -- Jonathan Riddell <jr at jriddell.org>  Tue, 17 May 2022 17:53:57 +0100
+
 qtbase-opensource-src (5.15.2+dfsg-5) unstable; urgency=medium
 
   * Backport upstream patch to fix allocated memory of QByteArray returned by
diff --git a/debian/patches/CVE-2022-25255.diff b/debian/patches/CVE-2022-25255.diff
index 1aec848..c9687c0 100644
--- a/debian/patches/CVE-2022-25255.diff
+++ b/debian/patches/CVE-2022-25255.diff
@@ -72,16 +72,16 @@ Last-Update: 2022-02-21
                  qt_safe_execve(argv[0], argv, envp);
 --- a/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp
 +++ b/tests/auto/widgets/kernel/qapplication/tst_qapplication.cpp
-@@ -1493,7 +1493,7 @@ void tst_QApplication::desktopSettingsAw
- {
- #if QT_CONFIG(process)
-     QProcess testProcess;
+@@ -1498,7 +1498,7 @@ void tst_QApplication::desktopSettingsAw
+     environment += QLatin1String("QT_MAC_DISABLE_FOREGROUND_APPLICATION_TRANSFORM=1");
+     testProcess.setEnvironment(environment);
+ #endif
 -    testProcess.start("desktopsettingsaware_helper");
 +    testProcess.start("./desktopsettingsaware_helper");
      QVERIFY2(testProcess.waitForStarted(),
               qPrintable(QString::fromLatin1("Cannot start 'desktopsettingsaware_helper': %1").arg(testProcess.errorString())));
      QVERIFY(testProcess.waitForFinished(10000));
-@@ -2447,7 +2447,7 @@ void tst_QApplication::qtbug_12673()
+@@ -2452,7 +2452,7 @@ void tst_QApplication::qtbug_12673()
  #if QT_CONFIG(process)
      QProcess testProcess;
      QStringList arguments;
diff --git a/debian/patches/fix-invalid-pointer-return-with-QGridLayout.diff b/debian/patches/fix-invalid-pointer-return-with-QGridLayout.diff
deleted file mode 100644
index 9eac33d..0000000
--- a/debian/patches/fix-invalid-pointer-return-with-QGridLayout.diff
+++ /dev/null
@@ -1,113 +0,0 @@
-From c47bb4478a4c3a29c0505d7d89755f40601b326f Mon Sep 17 00:00:00 2001
-From: Zhang Yu <zhangyub at uniontech.com>
-Date: Mon, 22 Feb 2021 09:25:01 +0800
-Subject: [PATCH] Fix invalid pointer return with QGridLayout::itemAt(-1)
-
-QGridLayout::takeAt() and QLayoutItem *itemAt() only check the upper bound.
-If the index < 0, these function will return invalid pointer.
-
-Fixes: QTBUG-91261
-Pick-to: 5.15 6.0 6.1
-Change-Id: Idfb9fb6228b9707f817353b04974da16205a835c
-Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo at kdab.com>
----
-
-diff --git a/src/widgets/kernel/qgridlayout.cpp b/src/widgets/kernel/qgridlayout.cpp
-index 121bae0..336a68c 100644
---- a/src/widgets/kernel/qgridlayout.cpp
-+++ b/src/widgets/kernel/qgridlayout.cpp
-@@ -149,14 +149,14 @@
-     QRect cellRect(int row, int col) const;
- 
-     inline QLayoutItem *itemAt(int index) const {
--        if (index < things.count())
-+        if (index >= 0 && index < things.count())
-             return things.at(index)->item();
-         else
-             return nullptr;
-     }
-     inline QLayoutItem *takeAt(int index) {
-         Q_Q(QGridLayout);
--        if (index < things.count()) {
-+        if (index >= 0 && index < things.count()) {
-             if (QGridBox *b = things.takeAt(index)) {
-                 QLayoutItem *item = b->takeItem();
-                 if (QLayout *l = item->layout()) {
-@@ -184,7 +184,7 @@
-     }
- 
-     void getItemPosition(int index, int *row, int *column, int *rowSpan, int *columnSpan) const {
--        if (index < things.count()) {
-+        if (index >= 0 && index < things.count()) {
-             const QGridBox *b =  things.at(index);
-             int toRow = b->toRow(rr);
-             int toCol = b->toCol(cc);
-diff --git a/tests/auto/widgets/kernel/qgridlayout/tst_qgridlayout.cpp b/tests/auto/widgets/kernel/qgridlayout/tst_qgridlayout.cpp
-index e3bd1d1..2cf2462 100644
---- a/tests/auto/widgets/kernel/qgridlayout/tst_qgridlayout.cpp
-+++ b/tests/auto/widgets/kernel/qgridlayout/tst_qgridlayout.cpp
-@@ -75,6 +75,7 @@
-     void taskQTBUG_40609_addingWidgetToItsOwnLayout();
-     void taskQTBUG_40609_addingLayoutToItself();
-     void taskQTBUG_52357_spacingWhenItemIsHidden();
-+    void taskQTBUG_91261_itemIndexRange();
-     void replaceWidget();
-     void dontCrashWhenExtendsToEnd();
- };
-@@ -1666,6 +1667,56 @@
-     QTRY_COMPARE_WITH_TIMEOUT(tempWidth, button1.width() + button3.width() + layout.spacing(), 1000);
- }
- 
-+void tst_QGridLayout::taskQTBUG_91261_itemIndexRange()
-+{
-+    QWidget widget;
-+    QGridLayout lay(&widget);
-+    QPushButton *btn = new QPushButton(&widget);
-+    lay.addWidget(btn, 0, 0);
-+
-+    {
-+        auto ptr = lay.itemAt(-1);
-+        QCOMPARE(ptr, nullptr);
-+
-+        ptr = lay.itemAt(0);
-+        QCOMPARE(ptr->widget(), btn);
-+
-+        ptr = lay.itemAt(1);
-+        QCOMPARE(ptr, nullptr);
-+    }
-+
-+    {
-+        int row = -1;
-+        int column = -1;
-+        int rowSpan;
-+        int columnSpan;
-+
-+        lay.getItemPosition(-1, &row, &column, &rowSpan, &columnSpan);
-+        QCOMPARE(row, -1);
-+        QCOMPARE(column, -1);
-+
-+        lay.getItemPosition(1, &row, &column, &rowSpan, &columnSpan);
-+        QCOMPARE(row, -1);
-+        QCOMPARE(column, -1);
-+
-+        lay.getItemPosition(0, &row, &column, &rowSpan, &columnSpan);
-+        QCOMPARE(row, 0);
-+        QCOMPARE(column, 0);
-+    }
-+
-+    {
-+        auto ptr = lay.takeAt(-1);
-+        QCOMPARE(ptr, nullptr);
-+
-+        ptr = lay.takeAt(1);
-+        QCOMPARE(ptr, nullptr);
-+
-+        ptr = lay.takeAt(0);
-+        QCOMPARE(ptr->widget(), btn);
-+        delete ptr;
-+    }
-+}
-+
- void tst_QGridLayout::replaceWidget()
- {
-     QWidget wdg;
diff --git a/debian/patches/fix_recursion_crash.diff b/debian/patches/fix_recursion_crash.diff
index 18667ac..6ee2ebe 100644
--- a/debian/patches/fix_recursion_crash.diff
+++ b/debian/patches/fix_recursion_crash.diff
@@ -10,7 +10,7 @@ Last-Update: 2021-11-13
 
 --- a/src/widgets/styles/qstylesheetstyle.cpp
 +++ b/src/widgets/styles/qstylesheetstyle.cpp
-@@ -2640,6 +2640,9 @@ void QStyleSheetStyle::setProperties(QWi
+@@ -2646,6 +2646,9 @@ void QStyleSheetStyle::setProperties(QWi
          default: v = decl.d->values.at(0).variant; break;
          }
  
diff --git a/debian/patches/gcc-11-qtconcurrentthreadengine.diff b/debian/patches/gcc-11-qtconcurrentthreadengine.diff
deleted file mode 100644
index 8cdeb07..0000000
--- a/debian/patches/gcc-11-qtconcurrentthreadengine.diff
+++ /dev/null
@@ -1,19 +0,0 @@
-Description: Fix builds of qtconcurrentthreadengine.h with GCC 11
- Without this patch, all the code that #includes QtConcurrent headers
- will fail to compile with GCC 11.
-Origin: upstream, https://codereview.qt-project.org/c/qt/qtbase/+/339417
-Last-Update: 2022-04-01
-
---- a/src/concurrent/qtconcurrentthreadengine.h
-+++ b/src/concurrent/qtconcurrentthreadengine.h
-@@ -247,8 +247,8 @@ template <>
- class ThreadEngineStarter<void> : public ThreadEngineStarterBase<void>
- {
- public:
--    ThreadEngineStarter<void>(ThreadEngine<void> *_threadEngine)
--    :ThreadEngineStarterBase<void>(_threadEngine) {}
-+    ThreadEngineStarter(ThreadEngine<void> *_threadEngine)
-+        : ThreadEngineStarterBase<void>(_threadEngine) {}
- 
-     void startBlocking()
-     {
diff --git a/debian/patches/series b/debian/patches/series
index 640e212..77c3ae2 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,6 +1,5 @@
 # Backported from upstream.
 gcc_11_limits.diff
-fix-invalid-pointer-return-with-QGridLayout.diff
 fix-misplacement-of-placeholder-text-in-QLineEdit.diff
 fix-placement-of-placeholder-text-in-QLineEdits-with-action-icons.diff
 fusion_checkable_qpushbutton.diff


More information about the Neon-commits mailing list