From 05fd050598c43cb4f06b6b40f987c2fbd34defc2 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint <Friedemann.Kleint@digia.com> Date: Mon, 27 Oct 2014 16:06:07 +0100 Subject: [PATCH] windeployqt: Make check for Qt modules more discriminative. Qt Creator's QtcSsh.dll is not a Qt module. Change-Id: I3349724a5d64d1662480d053369768fbbd54b3bc Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com> --- src/windeployqt/main.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/windeployqt/main.cpp b/src/windeployqt/main.cpp index 2f1da1449..c178a2078 100644 --- a/src/windeployqt/main.cpp +++ b/src/windeployqt/main.cpp @@ -582,9 +582,13 @@ static inline QString helpText(const QCommandLineParser &p) static inline bool isQtModule(const QString &libName) { - return libName.startsWith(QLatin1String("Qt"), Qt::CaseInsensitive) // Standard modules, Qt5XX.dll, Qt[Commercial]Charts.dll - || libName.startsWith(QLatin1String("DataVisualization"), Qt::CaseInsensitive) - || libName.startsWith(QLatin1String("Enginio"), Qt::CaseInsensitive); + // Match Standard modules, Qt5XX.dll, Qt[Commercial]Charts.dll and special cases. + return libName.size() > 2 + && ((libName.startsWith(QLatin1String("Qt"), Qt::CaseInsensitive) && libName.at(2).isDigit()) + || libName.startsWith(QLatin1String("QtCommercial"), Qt::CaseInsensitive) + || libName.startsWith(QLatin1String("QtCharts"), Qt::CaseInsensitive) + || libName.startsWith(QLatin1String("DataVisualization"), Qt::CaseInsensitive) + || libName.startsWith(QLatin1String("Enginio"), Qt::CaseInsensitive)); } // Helper for recursively finding all dependent Qt libraries. -- GitLab