Index: src/ch/DirTreeCtrl.cpp
===================================================================
diff -u -r4c272b19c74694c428c943011f279ec064fbd894 -r5710fadbac5568e52aff80f31495c33577d431ce
--- src/ch/DirTreeCtrl.cpp	(.../DirTreeCtrl.cpp)	(revision 4c272b19c74694c428c943011f279ec064fbd894)
+++ src/ch/DirTreeCtrl.cpp	(.../DirTreeCtrl.cpp)	(revision 5710fadbac5568e52aff80f31495c33577d431ce)
@@ -613,9 +613,10 @@
 	NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
 	_SHELLITEMDATA *psid=reinterpret_cast<_SHELLITEMDATA*>(pNMTreeView->itemOld.lParam);
 	
-	if (psid)
+	if(psid)
 	{
-		psid->lpsf->Release();
+		if(psid->lpsf)
+			psid->lpsf->Release();
 		FreePidl(psid->lpiidl);
 		FreePidl(psid->lpiidlRelative);
 		delete psid;
Index: src/ch/ResourceManager.h
===================================================================
diff -u -r7a096cad617f85582370a1c788c45442d39efc8c -r5710fadbac5568e52aff80f31495c33577d431ce
--- src/ch/ResourceManager.h	(.../ResourceManager.h)	(revision 7a096cad617f85582370a1c788c45442d39efc8c)
+++ src/ch/ResourceManager.h	(.../ResourceManager.h)	(revision 5710fadbac5568e52aff80f31495c33577d431ce)
@@ -91,6 +91,7 @@
 protected:
 	void SetFnameData(PTSTR *ppszDst, PCTSTR pszSrc);
 	static void EnumAttributesCallback(bool bGroup, const tchar_t* pszName, const tchar_t* pszValue, ptr_t pData);
+	static void UnescapeString(tchar_t* pszData);
 
 public:
 	TCHAR *m_pszFilename;		// file name of the language data (with path)