Index: src/ch/TSubTaskScanDirectory.cpp
===================================================================
diff -u -N -rab32897e61cc637a1e28d9dc3f0489b8d16a429c -r4be0f47d68a1a161529dc55901659b9daec996e3
--- src/ch/TSubTaskScanDirectory.cpp	(.../TSubTaskScanDirectory.cpp)	(revision ab32897e61cc637a1e28d9dc3f0489b8d16a429c)
+++ src/ch/TSubTaskScanDirectory.cpp	(.../TSubTaskScanDirectory.cpp)	(revision 4be0f47d68a1a161529dc55901659b9daec996e3)
@@ -27,13 +27,13 @@
 #include "../libchcore/TTaskDefinition.h"
 #include "FeedbackHandler.h"
 #include "TLocalFilesystem.h"
-#include "..\libchcore\FeedbackHandlerBase.h"
+#include "../libchcore/FeedbackHandlerBase.h"
 #include "TBasePathData.h"
 #include "../libchcore/TWorkerThreadController.h"
 #include "TTaskLocalStats.h"
 
 TSubTaskScanDirectories::TSubTaskScanDirectories(TSubTaskContext& rContext) :
-TSubTaskBase(rContext)
+	TSubTaskBase(rContext)
 {
 }
 
@@ -50,9 +50,14 @@
 	chcore::IFeedbackHandler* piFeedbackHandler = GetContext().GetFeedbackHandler();
 	const TBasePathDataContainer& rarrSourcePathsInfo = GetContext().GetBasePathDataContainer();
 	chcore::TWorkerThreadController& rThreadController = GetContext().GetThreadController();
+	TTaskLocalStats& rTaskLocalStats = GetContext().GetTaskLocalStats();
 
 	rLog.logi(_T("Searching for files..."));
 
+	// reset progress
+	rTaskLocalStats.SetProcessedSize(0);
+	rTaskLocalStats.SetTotalSize(0);
+
 	// delete the content of rFilesCache
 	rFilesCache.Clear();
 
@@ -205,7 +210,7 @@
 	}
 
 	// calc size of all files
-	GetContext().GetTaskLocalStats().SetTotalSize(rFilesCache.CalculateTotalSize());
+	rTaskLocalStats.SetTotalSize(rFilesCache.CalculateTotalSize());
 
 	// log
 	rLog.logi(_T("Searching for files finished"));