Accepting request 240084 from KDE:Qt5

- Added 00010-Replace-the-const-QString-global-static-with-a-QStri.patch,
  fixes segfaulting in global destructor, for more details see:
  http://mail.kde.org/pipermail/kde-frameworks-devel/2014-June/017086.html
- Added 00011-Use-correct-signal-name-when-disconnecting.patch,
  fixes crash on QtDBus unload

OBS-URL: https://build.opensuse.org/request/show/240084
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libqt5-qtbase?expand=0&rev=23
This commit is contained in:
Stephan Kulow 2014-07-13 12:05:56 +00:00 committed by Git OBS Bridge
parent 154cc92f96
commit 74642d42fc
4 changed files with 93 additions and 0 deletions

View File

@ -0,0 +1,49 @@
From eda5c8ede9fd35117146d13f1b55775c9007b672 Mon Sep 17 00:00:00 2001
From: Thiago Macieira <thiago.macieira@intel.com>
Date: Mon, 30 Jun 2014 08:31:22 -0700
Subject: [PATCH 1/1] Replace the const QString global static with a
QStringLiteral
It was originally created to avoid allocating memory for the QString at
every turn, but we have QStringLiteral for that today. It has also
served a very good run by catching qatomic.h implementations that had
bad cv qualifications.
Change-Id: Id6d952b8cce363015ec2611d346b4cccedecf137
---
src/dbus/qdbusintegrator.cpp | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/src/dbus/qdbusintegrator.cpp b/src/dbus/qdbusintegrator.cpp
index d4079e8..bc28d50 100644
--- a/src/dbus/qdbusintegrator.cpp
+++ b/src/dbus/qdbusintegrator.cpp
@@ -76,15 +76,21 @@ QT_BEGIN_NAMESPACE
static QBasicAtomicInt isDebugging = Q_BASIC_ATOMIC_INITIALIZER(-1);
#define qDBusDebug if (::isDebugging == 0); else qDebug
-Q_GLOBAL_STATIC_WITH_ARGS(const QString, orgFreedesktopDBusString, (QLatin1String(DBUS_SERVICE_DBUS)))
+QString orgFreedesktopDBusString()
+{
+ return QStringLiteral(DBUS_SERVICE_DBUS);
+}
static inline QString dbusServiceString()
-{ return *orgFreedesktopDBusString(); }
+{
+ return orgFreedesktopDBusString();
+}
+
static inline QString dbusInterfaceString()
{
// it's the same string, but just be sure
- Q_ASSERT(*orgFreedesktopDBusString() == QLatin1String(DBUS_INTERFACE_DBUS));
- return *orgFreedesktopDBusString();
+ Q_ASSERT(orgFreedesktopDBusString() == QLatin1String(DBUS_INTERFACE_DBUS));
+ return orgFreedesktopDBusString();
}
static inline QDebug operator<<(QDebug dbg, const QThread *th)
--
1.8.4.5

View File

@ -0,0 +1,29 @@
From 2160e7e0b7842d4ef49fdd435b4a7f127d479b90 Mon Sep 17 00:00:00 2001
From: Jakub Adam <jakub.adam@jollamobile.com>
Date: Wed, 4 Jun 2014 14:48:02 +0200
Subject: [PATCH] Use correct signal name when disconnecting "NameOwnerChanged"
A disconnectSignal() call with a wrong signal name caused that hook
wasn't found and thus kept in QDBusConnectionPrivate::signalHooks
forever.
Change-Id: Id7cda225be7580529fc835b377636226abb229f9
---
src/dbus/qdbusintegrator.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/dbus/qdbusintegrator.cpp b/src/dbus/qdbusintegrator.cpp
index 1fef6d4..d4079e8 100644
--- a/src/dbus/qdbusintegrator.cpp
+++ b/src/dbus/qdbusintegrator.cpp
@@ -2272,7 +2272,7 @@ QDBusConnectionPrivate::disconnectSignal
watchedServices.erase(sit);
disconnectSignal(dbusServiceString(), QString(), dbusInterfaceString(),
QLatin1String("NameOwnerChanged"), QStringList() << hook.service, QString(),
- this, SLOT(_q_serviceOwnerChanged(QString,QString,QString)));
+ this, SLOT(serviceOwnerChangedNoLock(QString,QString,QString)));
}
}
}
--
2.0.1

View File

@ -1,3 +1,12 @@
-------------------------------------------------------------------
Thu Jul 3 19:17:01 UTC 2014 - hrvoje.senjan@gmail.com
- Added 00010-Replace-the-const-QString-global-static-with-a-QStri.patch,
fixes segfaulting in global destructor, for more details see:
http://mail.kde.org/pipermail/kde-frameworks-devel/2014-June/017086.html
- Added 00011-Use-correct-signal-name-when-disconnecting.patch,
fixes crash on QtDBus unload
-------------------------------------------------------------------
Wed Jun 25 10:38:00 UTC 2014 - hrvoje.senjan@gmail.com

View File

@ -65,6 +65,10 @@ Patch1002: 0003-Fix-data-race-on-QLoggingCategory-when-using-qDebug-.patch
Patch1003: 0004-QDBus-fix-data-race-on-isDebugging-bool.patch
# PATCH-FIX-UPSTREAM 0005-Translate-Super-Hyper-keys-to-MetaModifier.patch -- QTBUG-38428
Patch1004: 0005-Translate-Super-Hyper-keys-to-MetaModifier.patch
# PATCH-FIX-UPSTREAM 00010-Replace-the-const-QString-global-static-with-a-QStri.patch
Patch2000: 00010-Replace-the-const-QString-global-static-with-a-QStri.patch
# PATCH-FIX-UPSTREAM 00011-Use-correct-signal-name-when-disconnecting.patch
Patch2001: 00011-Use-correct-signal-name-when-disconnecting.patch
BuildRequires: alsa-devel
BuildRequires: cups-devel
BuildRequires: fdupes
@ -159,6 +163,8 @@ handling.
%patch1002 -p1
%patch1003 -p1
%patch1004 -p1
%patch2000 -p1
%patch2001 -p1
# be sure not to use them
rm -r src/3rdparty/{libjpeg,freetype,libpng,zlib}