summarylogtreecommitdiffstats
path: root/0001-Handle-win64-in-dumpcpp-and-MetaObjectGenerator-read.patch
diff options
context:
space:
mode:
Diffstat (limited to '0001-Handle-win64-in-dumpcpp-and-MetaObjectGenerator-read.patch')
-rw-r--r--0001-Handle-win64-in-dumpcpp-and-MetaObjectGenerator-read.patch56
1 files changed, 56 insertions, 0 deletions
diff --git a/0001-Handle-win64-in-dumpcpp-and-MetaObjectGenerator-read.patch b/0001-Handle-win64-in-dumpcpp-and-MetaObjectGenerator-read.patch
new file mode 100644
index 000000000000..c13d879e9519
--- /dev/null
+++ b/0001-Handle-win64-in-dumpcpp-and-MetaObjectGenerator-read.patch
@@ -0,0 +1,56 @@
+From 52bafd8ad71ac730ee03a2827b1bda32527c0780 Mon Sep 17 00:00:00 2001
+From: Martchus <martchus@gmx.net>
+Date: Fri, 2 Jun 2017 17:21:08 +0200
+Subject: [PATCH 1/2] Handle win64 in dumpcpp and
+ MetaObjectGenerator::readClassInfo
+
+See https://bugreports.qt.io/browse/QTBUG-46827
+---
+ src/activeqt/container/qaxbase.cpp | 4 ++++
+ tools/dumpcpp/main.cpp | 8 ++++++++
+ 2 files changed, 12 insertions(+)
+
+diff --git a/src/activeqt/container/qaxbase.cpp b/src/activeqt/container/qaxbase.cpp
+index e97dd91..e0d9dbd 100644
+--- a/src/activeqt/container/qaxbase.cpp
++++ b/src/activeqt/container/qaxbase.cpp
+@@ -2104,6 +2104,10 @@ void MetaObjectGenerator::readClassInfo()
+ const QStringList versions = controls.childGroups();
+ for (const QString &version : versions) {
+ tlfile = controls.value(QLatin1Char('/') + version + QLatin1String("/0/win32/.")).toString();
++ if(tlfile.isEmpty())
++ {
++ tlfile = controls.value(QLatin1Char('/') + version + QLatin1String("/0/win64/.")).toString();
++ }
+ if (!tlfile.isEmpty())
+ break;
+ }
+diff --git a/tools/dumpcpp/main.cpp b/tools/dumpcpp/main.cpp
+index 092a3c0..c597942 100644
+--- a/tools/dumpcpp/main.cpp
++++ b/tools/dumpcpp/main.cpp
+@@ -1090,6 +1090,10 @@ int main(int argc, char **argv)
+ typeLib = settings.value(keyPrefix + QLatin1String("win32/.")).toString();
+ if (QFile::exists(typeLib))
+ break;
++ typeLib = settings.value(QLatin1String("/") + codes.at(c) + QLatin1String("/0/win64/.")).toByteArray();
++ if (QFile::exists(typeLib)) {
++ break;
++ }
+ }
+
+ if (!typeLib.isEmpty())
+@@ -1154,6 +1158,10 @@ int main(int argc, char **argv)
+ typeLib = settings.value(keyPrefix + QLatin1String("win32/.")).toString();
+ if (QFile::exists(typeLib))
+ break;
++ typeLib = settings.value(key + QLatin1String("/") + codes.at(c) + QLatin1String("/win64/.")).toByteArray();
++ if (QFile::exists(typeLib)) {
++ break;
++ }
+ }
+ }
+
+--
+2.31.1
+