Index: src/libchcore/TSubTaskContext.h
===================================================================
diff -u -r11b0a299be97bc3afaa633d6522c17b214ba3b79 -r9ebcc7abf1e0e70f0db2d08b2691351a26ef259b
--- src/libchcore/TSubTaskContext.h	(.../TSubTaskContext.h)	(revision 11b0a299be97bc3afaa633d6522c17b214ba3b79)
+++ src/libchcore/TSubTaskContext.h	(.../TSubTaskContext.h)	(revision 9ebcc7abf1e0e70f0db2d08b2691351a26ef259b)
@@ -29,6 +29,7 @@
 #include "IFeedbackHandler.h"
 #include "TBasePathData.h"
 #include "TFileInfoArray.h"
+#include "IFilesystem.h"
 
 namespace icpf
 {
@@ -52,7 +53,7 @@
 	TSubTaskContext(TConfig& rConfig, const TBasePathDataContainerPtr& spBasePaths,
 					const TFileFiltersArray& rFilters,
 					TTaskConfigTracker& rCfgTracker, icpf::log_file& rLog,
-					TWorkerThreadController& rThreadController, TLocalFilesystem& rfsLocal);
+					TWorkerThreadController& rThreadController, const IFilesystemPtr& spFilesystem);
 	~TSubTaskContext();
 
 	TConfig& GetConfig();
@@ -79,8 +80,8 @@
 	TWorkerThreadController& GetThreadController();
 	const TWorkerThreadController& GetThreadController() const;
 
-	TLocalFilesystem& GetLocalFilesystem();
-	const TLocalFilesystem& GetLocalFilesystem() const;
+	IFilesystemPtr GetLocalFilesystem();
+	const IFilesystemPtr GetLocalFilesystem() const;
 
 private:
 	TSubTaskContext(const TSubTaskContext& rSrc);
@@ -108,7 +109,10 @@
 	TTaskConfigTracker& m_rCfgTracker;
 
 	// local filesystem access functions
-	TLocalFilesystem& m_rfsLocal;
+#pragma warning(push)
+#pragma warning(disable: 4251)
+	IFilesystemPtr m_spFilesystem;
+#pragma warning(pop)
 
 	// additional data
 	icpf::log_file& m_rLog;