aboutsummaryrefslogtreecommitdiffstats
path: root/tools/qmlformat/qmlformat.cpp
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@qt.io>2024-10-07 11:32:50 +0200
committerUlf Hermann <ulf.hermann@qt.io>2024-10-07 19:04:59 +0200
commit5ecfe3d57ffc339e8cc4c4b92e421d9897134e19 (patch)
treedab4d756a6c2cc7877f542bafc4800808123c32f /tools/qmlformat/qmlformat.cpp
parent5f30988f01c9f8fb127ef128b25ca735022cef25 (diff)
qmlformat: Pass QQmlFormatOptions by const ref
There actually is a code path that returns it as-is and that saves a copy this way. Coverity-Id: 469518 Coverity-Id: 469514 Change-Id: I50bcfe6c30648baba192233003d4a77fb8a4d048 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Sami Shalayel <sami.shalayel@qt.io>
Diffstat (limited to 'tools/qmlformat/qmlformat.cpp')
-rw-r--r--tools/qmlformat/qmlformat.cpp18
1 files changed, 12 insertions, 6 deletions
diff --git a/tools/qmlformat/qmlformat.cpp b/tools/qmlformat/qmlformat.cpp
index 8767941ccd..56d8cfa3f9 100644
--- a/tools/qmlformat/qmlformat.cpp
+++ b/tools/qmlformat/qmlformat.cpp
@@ -249,18 +249,24 @@ int main(int argc, char *argv[])
if (options.writeDefaultSettingsEnabled())
return settings.writeDefaults() ? 0 : -1;
- auto getSettings = [&](const QString &file, QQmlFormatOptions options) {
+ auto getSettings = [&](const QString &file, const QQmlFormatOptions &options) {
// Perform formatting inplace if --files option is set.
- if (!options.files().isEmpty())
- options.setIsInplace(true);
+ const bool hasFiles = !options.files().isEmpty();
- if (options.ignoreSettingsEnabled() || !settings.search(file))
- return options;
+ if (options.ignoreSettingsEnabled() || !settings.search(file)) {
+ if (!hasFiles)
+ return options;
+
+ QQmlFormatOptions perFileOptions = options;
+ perFileOptions.setIsInplace(true);
+ return perFileOptions;
+ }
QQmlFormatOptions perFileOptions = options;
+ if (hasFiles)
+ perFileOptions.setIsInplace(true);
perFileOptions.applySettings(settings);
-
return perFileOptions;
};