Your message dated Sun, 22 Jun 2025 10:26:35 +0000
with message-id <e1uthuf-00aamt...@respighi.debian.org>
and subject line unblock qt6-base
has caused the Debian Bug report #1108147,
regarding unblock: qt6-base/6.8.2+dfsg-7
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
1108147: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1108147
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
X-Debbugs-Cc: qt6-b...@packages.debian.org,debian-qt-...@lists.debian.org, 
delta...@debian.org
Control: affects -1 + src:qt6-base
User: release.debian....@packages.debian.org
Usertags: unblock

Dear Release Team,

please unblock the package qt6-base.

[ Reason ]
The upload backports 2 patches that fix bugs #1108018 and #1108026.

[ Impact ]
One on hand, the calendar reminder crashes regularly on X11 sessions
on Plasma 6.
Othe other hand, printing a range of pages from e.g. Okular does not work.

In both cases, the bug was found to be in Qt and not the actual applications.

[ Tests ]
The patches are backported from upstream Qt and went through their QA.

[ Risks ]
I deem the risks to be very low. The patches are taken directly from upstream
where they have been applied to Qt 6.8.3 (trixie will ship with Qt 6.8.2).
The patches themselves are rather trivial.

[ Checklist ]
  [x] all changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in testing


Thank you.


unblock qt6-base/6.8.2+dfsg-7
diff -Nru qt6-base-6.8.2+dfsg/debian/changelog 
qt6-base-6.8.2+dfsg/debian/changelog
--- qt6-base-6.8.2+dfsg/debian/changelog        2025-04-16 21:33:04.000000000 
+0200
+++ qt6-base-6.8.2+dfsg/debian/changelog        2025-06-20 00:08:21.000000000 
+0200
@@ -1,3 +1,13 @@
+qt6-base (6.8.2+dfsg-7) unstable; urgency=medium
+
+  [ Patrick Franz ]
+  * Backport patch to prevent unregistering an input device if the list
+    is destroyed (Closes: 1108018).
+  * Backport patch to rely on CUPS for multiple page ranges (Closes:
+    #1108026).
+
+ -- Patrick Franz <delta...@debian.org>  Fri, 20 Jun 2025 00:08:21 +0200
+
 qt6-base (6.8.2+dfsg-6) unstable; urgency=medium
 
   [ Patrick Franz ]
diff -Nru qt6-base-6.8.2+dfsg/debian/patches/series 
qt6-base-6.8.2+dfsg/debian/patches/series
--- qt6-base-6.8.2+dfsg/debian/patches/series   2025-04-16 21:15:38.000000000 
+0200
+++ qt6-base-6.8.2+dfsg/debian/patches/series   2025-06-20 00:08:03.000000000 
+0200
@@ -13,6 +13,8 @@
 upstream_qlocale_shutdown.patch
 upstream_qsystemlocale_post_destruction_access.patch
 upstream_qlibraryinfo_speedup.patch
+upstream_prevent_unregistering_input_device.diff
+upstream_cups_for_multiple_page_ranges.diff
 
 # Needs to be fixed upstream.
 Add-SH-detection.patch
diff -Nru 
qt6-base-6.8.2+dfsg/debian/patches/upstream_cups_for_multiple_page_ranges.diff 
qt6-base-6.8.2+dfsg/debian/patches/upstream_cups_for_multiple_page_ranges.diff
--- 
qt6-base-6.8.2+dfsg/debian/patches/upstream_cups_for_multiple_page_ranges.diff  
    1970-01-01 01:00:00.000000000 +0100
+++ 
qt6-base-6.8.2+dfsg/debian/patches/upstream_cups_for_multiple_page_ranges.diff  
    2025-06-20 00:06:32.000000000 +0200
@@ -0,0 +1,42 @@
+From 3730a7f83ef081564331ea619131e63be8488386 Mon Sep 17 00:00:00 2001
+From: Alexander Stippich <a.stipp...@gmx.net>
+Date: Wed, 26 Feb 2025 20:46:04 +0100
+Subject: [PATCH] rely on CUPS for multiple page ranges in unix version of 
QPrintDialog
+
+Since the introduction of QPageRanges with Qt6, multiple/arbitrary page
+ranges are broken in the unix implementation of QPrintDialog due to a
+possible double application of the page ranges: on the application side
+and on the server side with CUPS. Reason for this is that the
+QPrinter::PrintRange is set to PageRange instead of AllPages.
+The latter is needed when relying on the CUPS server-side page range.
+However, the server-side page range is always applied later on.
+
+Restore the behavior of Qt5 and set the PrintRange to AllPages for
+multiple/arbitrary page ranges and rely on the server-side filtering
+with CUPS.
+
+Change-Id: I1b85552a8cf2509b11a81db028f957584043f3ee
+Reviewed-by: Albert Astals Cid <aa...@kde.org>
+Reviewed-by: David Faure <david.fa...@kdab.com>
+(cherry picked from commit 2428cbf44e3e2aa4eaf00c9548ac5a74685101c4)
+Reviewed-by: Qt Cherry-pick Bot <cherrypick_...@qt-project.org>
+(cherry picked from commit b630ed4ef8c7ae43c8ab2a8826d664995cc8b685)
+---
+
+diff --git a/src/printsupport/dialogs/qprintdialog_unix.cpp 
b/src/printsupport/dialogs/qprintdialog_unix.cpp
+index 8846fc3..bdaa5fa 100644
+--- a/src/printsupport/dialogs/qprintdialog_unix.cpp
++++ b/src/printsupport/dialogs/qprintdialog_unix.cpp
+@@ -785,10 +785,8 @@
+ #if QT_CONFIG(cups)
+     if (options.pagesRadioButton->isChecked()) {
+         const QPageRanges ranges = 
QPageRanges::fromString(options.pagesLineEdit->text());
+-        if (!ranges.isEmpty()) {
+-            p->setPrintRange(QPrinter::PageRange);
+-            p->setPageRanges(ranges);
+-        }
++        p->setPrintRange(QPrinter::AllPages);
++        p->setPageRanges(QPageRanges());
+ 
+         // server-side page filtering
+         QCUPSSupport::setPageRange(p, ranges.toString());
diff -Nru 
qt6-base-6.8.2+dfsg/debian/patches/upstream_prevent_unregistering_input_device.diff
 
qt6-base-6.8.2+dfsg/debian/patches/upstream_prevent_unregistering_input_device.diff
--- 
qt6-base-6.8.2+dfsg/debian/patches/upstream_prevent_unregistering_input_device.diff
 1970-01-01 01:00:00.000000000 +0100
+++ 
qt6-base-6.8.2+dfsg/debian/patches/upstream_prevent_unregistering_input_device.diff
 2025-06-20 00:01:59.000000000 +0200
@@ -0,0 +1,28 @@
+From c46ac58ea36d5d446f7e64ce0021de0956b2e704 Mon Sep 17 00:00:00 2001
+From: Thiago Macieira <thiago.macie...@intel.com>
+Date: Mon, 17 Feb 2025 20:16:55 +0100
+Subject: [PATCH] GUI: no need to unregister input device if list is destroyed
+
+Fixes: QTBUG-133776
+Change-Id: If4a148e3ebf753ccd661a5ed1b321dbd7751576e
+Reviewed-by: Shawn Rutledge <shawn.rutle...@qt.io>
+Reviewed-by: Liang Qi <liang...@qt.io>
+(cherry picked from commit 1040728e39b8b898d6e96b79a4c7bfcd0cb3f027)
+Reviewed-by: Qt Cherry-pick Bot <cherrypick_...@qt-project.org>
+(cherry picked from commit 6ad615cd1218a9b7f4204c04288ae2d6ed6c232b)
+---
+
+diff --git a/src/gui/kernel/qinputdevice.cpp b/src/gui/kernel/qinputdevice.cpp
+index 3ef8ad1..25f16c4 100644
+--- a/src/gui/kernel/qinputdevice.cpp
++++ b/src/gui/kernel/qinputdevice.cpp
+@@ -356,6 +356,9 @@
+ */
+ void QInputDevicePrivate::unregisterDevice(const QInputDevice *dev)
+ {
++    if (deviceList.isDestroyed())
++        return;     // nothing to remove!
++
+     QMutexLocker lock(&devicesMutex);
+     deviceList()->removeOne(dev);
+     qCInfo(lcQpaInputDevices) << "Unregistered" << dev;

--- End Message ---
--- Begin Message ---
Unblocked qt6-base.

--- End Message ---

Reply via email to