diff --git a/stepmania/src/Profile.cpp b/stepmania/src/Profile.cpp index 57838be466..966ae81fd6 100644 --- a/stepmania/src/Profile.cpp +++ b/stepmania/src/Profile.cpp @@ -1941,10 +1941,23 @@ XNode* Profile::SaveCoinDataCreateNode() const void Profile::MoveBackupToDir( RString sFromDir, RString sToDir ) { - FILEMAN->Move( sFromDir+EDITABLE_INI, sToDir+EDITABLE_INI ); - FILEMAN->Move( sFromDir+STATS_XML, sToDir+STATS_XML ); - FILEMAN->Move( sFromDir+STATS_XML+SIGNATURE_APPEND, sToDir+STATS_XML+SIGNATURE_APPEND ); - FILEMAN->Move( sFromDir+DONT_SHARE_SIG, sToDir+DONT_SHARE_SIG ); + if( FILEMAN->IsAFile(sFromDir + STATS_XML) && + FILEMAN->IsAFile(sFromDir+STATS_XML+SIGNATURE_APPEND) ) + { + FILEMAN->Move( sFromDir+STATS_XML, sToDir+STATS_XML ); + FILEMAN->Move( sFromDir+STATS_XML+SIGNATURE_APPEND, sToDir+STATS_XML+SIGNATURE_APPEND ); + } + else if( FILEMAN->IsAFile(sFromDir + STATS_XML_GZ) && + FILEMAN->IsAFile(sFromDir+STATS_XML_GZ+SIGNATURE_APPEND) ) + { + FILEMAN->Move( sFromDir+STATS_XML_GZ, sToDir+STATS_XML ); + FILEMAN->Move( sFromDir+STATS_XML_GZ+SIGNATURE_APPEND, sToDir+STATS_XML+SIGNATURE_APPEND ); + } + + if( FILEMAN->IsAFile(sFromDir + EDITABLE_INI) ) + FILEMAN->Move( sFromDir+EDITABLE_INI, sToDir+EDITABLE_INI ); + if( FILEMAN->IsAFile(sFromDir + DONT_SHARE_SIG) ) + FILEMAN->Move( sFromDir+DONT_SHARE_SIG, sToDir+DONT_SHARE_SIG ); } // lua start