From 6a4ecce83cd63c4343db3345a6b33c934dd2e9cb Mon Sep 17 00:00:00 2001
From: Petar Perisin <petar.perisin@gmail.com>
Date: Tue, 26 Mar 2013 18:06:38 +0100
Subject: [PATCH] GenericProject: add only existing files
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

when refreshing project check if files exist, and add only existing
files to the project

Change-Id: I5937bbe39e56c089b97350e095458c014fd294fb
Reviewed-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
---
 src/plugins/genericprojectmanager/genericproject.cpp | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/src/plugins/genericprojectmanager/genericproject.cpp b/src/plugins/genericprojectmanager/genericproject.cpp
index 7fd885eb4d7..e9f6a8a2bef 100644
--- a/src/plugins/genericprojectmanager/genericproject.cpp
+++ b/src/plugins/genericprojectmanager/genericproject.cpp
@@ -328,6 +328,7 @@ QStringList GenericProject::processEntries(const QStringList &paths,
     const QProcessEnvironment env = QProcessEnvironment::systemEnvironment();
     const QDir projectDir(QFileInfo(m_fileName).dir());
 
+    QFileInfo fileInfo;
     QStringList absolutePaths;
     foreach (const QString &path, paths) {
         QString trimmedPath = path.trimmed();
@@ -338,10 +339,13 @@ QStringList GenericProject::processEntries(const QStringList &paths,
 
         trimmedPath = Utils::FileName::fromUserInput(trimmedPath).toString();
 
-        const QString absPath = QFileInfo(projectDir, trimmedPath).absoluteFilePath();
-        absolutePaths.append(absPath);
-        if (map)
-            map->insert(absPath, trimmedPath);
+        fileInfo.setFile(projectDir, trimmedPath);
+        if (fileInfo.exists()) {
+            const QString absPath = fileInfo.absoluteFilePath();
+            absolutePaths.append(absPath);
+            if (map)
+                map->insert(absPath, trimmedPath);
+        }
     }
     absolutePaths.removeDuplicates();
     return absolutePaths;
-- 
GitLab