Index: src/libchcore/TDestinationPathProvider.cpp =================================================================== diff -u -ref2ea2589f6eeed54f8001fee72936198172ceed -rdcc6234ed612a75910b8900704c9d564096a037a --- src/libchcore/TDestinationPathProvider.cpp (.../TDestinationPathProvider.cpp) (revision ef2ea2589f6eeed54f8001fee72936198172ceed) +++ src/libchcore/TDestinationPathProvider.cpp (.../TDestinationPathProvider.cpp) (revision dcc6234ed612a75910b8900704c9d564096a037a) @@ -105,7 +105,9 @@ // set the dest path TString strCheckPath = m_strFirstAltName; - strCheckPath.Replace(_T("%name"), pathFilename.ToString()); + strCheckPath.Replace(_T("%name"), pathFilename.GetFileTitle().ToString()); + strCheckPath.Replace(_T("%ext"), pathFilename.GetExtension().ToString()); + TSmartPath pathCheckPath(PathFromWString(strCheckPath)); // when adding to strDstPath check if the path already exists - if so - try again @@ -114,7 +116,8 @@ while(m_spFilesystem->PathExist(m_pathDestinationBase + pathCheckPath)) { strCheckPath = strFmt; - strCheckPath.Replace(_T("%name"), pathFilename.ToString()); + strCheckPath.Replace(_T("%name"), pathFilename.GetFileTitle().ToString()); + strCheckPath.Replace(_T("%ext"), pathFilename.GetExtension().ToString()); strCheckPath.Replace(_T("%count"), boost::lexical_cast(++iCounter).c_str()); pathCheckPath.FromString(strCheckPath); }