From 4e60001f8341b23998e6e41445fee76b7029d088 Mon Sep 17 00:00:00 2001 From: Hugues Delorme Date: Thu, 22 Jan 2015 14:54:24 +0100 Subject: [PATCH] Vcs: fix potential issue in VcsBaseEditor::getTitleId() In case the input list of filenames contains only empty item(s) then getTitleId() fails to return a valid result. It should return the workingDir or the revision. Change-Id: I697826446037e4b1e9f94c4c0c558336f8d44237 Reviewed-by: Tobias Hunger --- src/plugins/vcsbase/vcsbaseeditor.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/plugins/vcsbase/vcsbaseeditor.cpp b/src/plugins/vcsbase/vcsbaseeditor.cpp index e4d21bdfb98..b1cbac71b3d 100644 --- a/src/plugins/vcsbase/vcsbaseeditor.cpp +++ b/src/plugins/vcsbase/vcsbaseeditor.cpp @@ -1318,16 +1318,22 @@ QString VcsBaseEditor::getTitleId(const QString &workingDirectory, const QStringList &fileNames, const QString &revision) { + QStringList nonEmptyFileNames; + foreach (const QString& fileName, fileNames) { + if (!fileName.trimmed().isEmpty()) + nonEmptyFileNames.append(fileName); + } + QString rc; - switch (fileNames.size()) { + switch (nonEmptyFileNames.size()) { case 0: rc = workingDirectory; break; case 1: - rc = fileNames.front(); + rc = nonEmptyFileNames.front(); break; default: - rc = fileNames.join(QLatin1String(", ")); + rc = nonEmptyFileNames.join(QLatin1String(", ")); break; } if (!revision.isEmpty()) {