Index: src/libchcore/TPath.h
===================================================================
diff -u -r3fc1109991e7311d6b1e34ef0b730f9b4e1fd42a -r44307d01df646fd0320eff428856b0676761d34d
--- src/libchcore/TPath.h	(.../TPath.h)	(revision 3fc1109991e7311d6b1e34ef0b730f9b4e1fd42a)
+++ src/libchcore/TPath.h	(.../TPath.h)	(revision 44307d01df646fd0320eff428856b0676761d34d)
@@ -130,6 +130,12 @@
 	void load(Archive& ar, unsigned int /*uiVersion*/)
 	{
 		PrepareToWrite();
+		ar & m_pPath->m_strPath;
+	}
+
+	template<class Archive>
+	void save(Archive& ar, unsigned int /*uiVersion*/) const
+	{
 		if(m_pPath)
 			ar & m_pPath->m_strPath;
 		else
@@ -139,12 +145,6 @@
 		}
 	}
 
-	template<class Archive>
-	void save(Archive& ar, unsigned int /*uiVersion*/) const
-	{
-		ar & m_pPath->m_strPath;
-	}
-
 	BOOST_SERIALIZATION_SPLIT_MEMBER();
 
 protected: