summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaniel Teske <daniel.teske@digia.com>2013-01-28 15:12:06 +0100
committerDaniel Teske <daniel.teske@digia.com>2013-01-31 16:08:05 +0100
commit35457f6f2e13ae4807d607bc6e7b304b7577d511 (patch)
tree93dac24d7da4e5d6f5b961ec239728a2b360cee7 /src
parent2970a036d8c2ebd8294ed66709c932748a26f9f1 (diff)
downloadqt-creator-35457f6f2e13ae4807d607bc6e7b304b7577d511.tar.gz
Fix crash on renaming files in generic project manager
Task-number: QTCREATORBUG-8638 Change-Id: Ie5b9c237459f4e6d503121331a51821cd812bee8 Reviewed-by: Matthias Blaicher <matthias@blaicher.com> Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Diffstat (limited to 'src')
-rw-r--r--src/plugins/genericprojectmanager/genericprojectnodes.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/plugins/genericprojectmanager/genericprojectnodes.cpp b/src/plugins/genericprojectmanager/genericprojectnodes.cpp
index 89b5a683a2..c411de730d 100644
--- a/src/plugins/genericprojectmanager/genericprojectnodes.cpp
+++ b/src/plugins/genericprojectmanager/genericprojectnodes.cpp
@@ -119,7 +119,9 @@ void GenericProjectNode::refresh(QSet<QString> oldFileList)
QString baseDir = QFileInfo(path()).absolutePath();
QHash<QString, QStringList> filesInPaths = sortFilesIntoPaths(baseDir, added);
foreach (const QString &filePath, filesInPaths.keys()) {
- QStringList components = filePath.split(QLatin1Char('/'));
+ QStringList components;
+ if (!filePath.isEmpty())
+ components = filePath.split(QLatin1Char('/'));
FolderNode *folder = findFolderByName(components, components.size());
if (!folder)
folder = createFolderByName(components, components.size());
@@ -136,7 +138,9 @@ void GenericProjectNode::refresh(QSet<QString> oldFileList)
filesInPaths = sortFilesIntoPaths(baseDir, removed);
foreach (const QString &filePath, filesInPaths.keys()) {
- QStringList components = filePath.split(QLatin1Char('/'));
+ QStringList components;
+ if (!filePath.isEmpty())
+ components = filePath.split(QLatin1Char('/'));
FolderNode *folder = findFolderByName(components, components.size());
QList<FileNode *> fileNodes;
@@ -176,9 +180,6 @@ FolderNode *GenericProjectNode::createFolderByName(const QStringList &components
const QString component = components.at(end - 1);
- if (component.isEmpty())
- return this;
-
const QString baseDir = QFileInfo(path()).path();
FolderNode *folder = new FolderNode(baseDir + QLatin1Char('/') + folderName);
folder->setDisplayName(component);