diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2020-09-15 13:52:06 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2020-09-15 19:53:14 +0000 |
commit | 792046651cf904590d2e6a57253380d4b129b070 (patch) | |
tree | 46bd2b47c77634b4f72025fbe75d35c6794e957c | |
parent | 415bc38612bc4fa18af4f5921bc8e845c86374b0 (diff) | |
download | qtactiveqt-792046651cf904590d2e6a57253380d4b129b070.tar.gz |
dumpcpp: Check 64 bit registry keys for 64bit builds
Add a check depending on pointer size.
Fixes: QTBUG-86666
Change-Id: I6bb39e94e677e9f9c72b15949e7b463e1f4776d2
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
(cherry picked from commit 782710f23604b7437417540c2d44aec06c42f3ba)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | tools/dumpcpp/main.cpp | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/tools/dumpcpp/main.cpp b/tools/dumpcpp/main.cpp index 780d41b..55aa80b 100644 --- a/tools/dumpcpp/main.cpp +++ b/tools/dumpcpp/main.cpp @@ -1577,7 +1577,13 @@ int main(int argc, char **argv) typeLib.clear(); QStringList codes = settings.childGroups(); for (int c = 0; c < codes.count(); ++c) { - typeLib = settings.value(QLatin1Char('/') + codes.at(c) + QLatin1String("/0/win32/.")).toString(); + const QString keyPrefix = QLatin1Char('/') + codes.at(c) + QLatin1String("/0/"); + if (QT_POINTER_SIZE == 8) { + typeLib = settings.value(keyPrefix + QLatin1String("win64/.")).toString(); + if (QFile::exists(typeLib)) + break; + } + typeLib = settings.value(keyPrefix + QLatin1String("win32/.")).toString(); if (QFile::exists(typeLib)) break; } @@ -1635,8 +1641,13 @@ int main(int argc, char **argv) settings.endGroup(); for (int c = 0; c < codes.count(); ++c) { - typeLib = settings.value(key + QLatin1Char('/') + codes.at(c) - + QLatin1String("/win32/.")).toString(); + const QString keyPrefix = key + QLatin1Char('/') + codes.at(c) + QLatin1Char('/'); + if (QT_POINTER_SIZE == 8) { + typeLib = settings.value(keyPrefix + QLatin1String("win64/.")).toString(); + if (QFile::exists(typeLib)) + break; + } + typeLib = settings.value(keyPrefix + QLatin1String("win32/.")).toString(); if (QFile::exists(typeLib)) break; } |