From 73d0174f50374090d0d0b45322e86b2ca825886d Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Tue, 15 Mar 2022 14:17:37 +0100 Subject: [PATCH] QLibrary: restore translated string We want to pick this change to LTS branches, so we cannot change the translated string. Instead of fixing the order of placeholders, use multi-arg, which performs only a single pass over the input and doesn't suffer from placeholder injection by interpolation the way .arg() chaining does. Requires to use QString::number(), though. Amends 3636325946b471d48043540e309bf6f52be45331. Pick-to: 6.3 6.2 5.15 Change-Id: I6484a052115096c609edfea27dfd36b196efc1b6 Reviewed-by: Thiago Macieira --- src/corelib/plugin/qlibrary.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/corelib/plugin/qlibrary.cpp b/src/corelib/plugin/qlibrary.cpp index be284b201b..fbeddf0bb0 100644 --- a/src/corelib/plugin/qlibrary.cpp +++ b/src/corelib/plugin/qlibrary.cpp @@ -784,12 +784,12 @@ void QLibraryPrivate::updatePluginState() QFile::encodeName(fileName).constData(), (qt_version&0xff0000) >> 16, (qt_version&0xff00) >> 8, qt_version&0xff, debug ? "debug" : "release"); - errorString = QLibrary::tr("The plugin '%5' uses incompatible Qt library. (%1.%2.%3) [%4]") - .arg((qt_version&0xff0000) >> 16) - .arg((qt_version&0xff00) >> 8) - .arg(qt_version&0xff) - .arg(debug ? QLatin1String("debug") : QLatin1String("release")) - .arg(fileName); + errorString = QLibrary::tr("The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]") + .arg(fileName, + QString::number((qt_version & 0xff0000) >> 16), + QString::number((qt_version & 0xff00) >> 8), + QString::number(qt_version & 0xff), + debug ? QLatin1String("debug") : QLatin1String("release")); } else if (PluginMustMatchQtDebug && debug != QtBuildIsDebug) { //don't issue a qWarning since we will hopefully find a non-debug? --Sam errorString = QLibrary::tr("The plugin '%1' uses incompatible Qt library."