diff options
| author | Daniel Teske <daniel.teske@digia.com> | 2013-01-28 15:12:06 +0100 |
|---|---|---|
| committer | Daniel Teske <daniel.teske@digia.com> | 2013-01-31 16:08:05 +0100 |
| commit | 35457f6f2e13ae4807d607bc6e7b304b7577d511 (patch) | |
| tree | 93dac24d7da4e5d6f5b961ec239728a2b360cee7 /src | |
| parent | 2970a036d8c2ebd8294ed66709c932748a26f9f1 (diff) | |
| download | qt-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.cpp | 11 |
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); |
