Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package qt6-base for openSUSE:Factory 
checked in at 2026-04-04 19:04:06
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/qt6-base (Old)
 and      /work/SRC/openSUSE:Factory/.qt6-base.new.21863 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "qt6-base"

Sat Apr  4 19:04:06 2026 rev:81 rq:1344390 version:6.11.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/qt6-base/qt6-base.changes        2026-03-28 
20:13:56.262875609 +0100
+++ /work/SRC/openSUSE:Factory/.qt6-base.new.21863/qt6-base.changes     
2026-04-04 19:04:08.317059439 +0200
@@ -1,0 +2,6 @@
+Thu Apr  2 12:42:22 UTC 2026 - pallas wept <[email protected]>
+
+- Added patch to fix qdbus segfaults (QTBUG-145359)
+  * 0001-Ensure-custom-types-are-normalized.patch
+
+-------------------------------------------------------------------

New:
----
  0001-Ensure-custom-types-are-normalized.patch

----------(New B)----------
  New:- Added patch to fix qdbus segfaults (QTBUG-145359)
  * 0001-Ensure-custom-types-are-normalized.patch
----------(New E)----------

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

Other differences:
------------------
++++++ qt6-base.spec ++++++
--- /var/tmp/diff_new_pack.AmIDej/_old  2026-04-04 19:04:09.501107961 +0200
+++ /var/tmp/diff_new_pack.AmIDej/_new  2026-04-04 19:04:09.505108125 +0200
@@ -43,6 +43,7 @@
 Source99:       qt6-base-rpmlintrc
 # Patches 0-100 are upstream patches #
 Patch0:         0001-Do-not-persist-unicode-error-state-across-dirents.patch
+Patch1:         0001-Ensure-custom-types-are-normalized.patch
 # Patches 100-200 are openSUSE and/or non-upstream(able) patches #
 # No need to pollute the library dir with object files, install them in the 
qt6 subfolder
 Patch100:       0001-CMake-Install-objects-files-into-ARCHDATADIR.patch

++++++ 0001-Ensure-custom-types-are-normalized.patch ++++++
>From c4182bd5e791c6e209c5084c33e4f6a105722d5f Mon Sep 17 00:00:00 2001
From: Thiago Macieira <[email protected]>
Date: Mon, 30 Mar 2026 11:47:58 -0400
Subject: [PATCH] QDBusMetaObject: ensure custom types are normalized

The QMetaTypeInterface::name field has been expected to be normalized
since commit 4dbac23e5354638224d8d99ba3342067c015a04b from 6.0. This
code from 5.2 didn't do that, despite having been updated for 6.0. We
just never noticed because QMetaType was lenient.

That changed in commit cfcf10e0911ec778c1de112fcbbd34cea4612598
("QMetaType: Optimize unregistering of custom types") from 6.11, which
changed the unregistration code to rely on that assumption. That caused
the search for a metatype in unregisterDynamicType() to fail to find
anything and thus crash when dereferencing the end:

        auto it = aliases.find(ti->name);
        if (it->data() == ti) {

[ChangeLog][Tools][qdbus] Fixed a bug that would cause the tool to crash
on exit when querying remote objects containing complex arguments.

Fixes: QTBUG-145359
Pick-to: 6.11
Change-Id: Ia2f22f953e28a100b0d0fffdfae6f2a6d28ac5f8
Reviewed-by: Joerg Bornemann <[email protected]>
Reviewed-by: Ulf Hermann <[email protected]>
---

diff --git a/src/dbus/qdbusmetaobject.cpp b/src/dbus/qdbusmetaobject.cpp
index 149392f..70b861e 100644
--- a/src/dbus/qdbusmetaobject.cpp
+++ b/src/dbus/qdbusmetaobject.cpp
@@ -173,6 +173,7 @@
             // type is still unknown or doesn't match back to the signature 
that it
             // was expected to, so synthesize a fake type
             typeName = "QDBusRawType<0x" + signature.toHex() + ">*";
+            Q_ASSERT(typeName == QMetaObject::normalizedType(typeName));
             type = registerComplexDBusType(typeName);
         }
 
@@ -195,6 +196,7 @@
             type = qMetaTypeId<QByteArrayList>();
         } else {
             result.name = "{D-Bus type \"" + signature + "\"}";
+            result.name = QMetaObject::normalizedType(result.name);
             type = registerComplexDBusType(result.name);
         }
     } else {

Reply via email to