diff --git a/GBM/Classes/clsGame.vb b/GBM/Classes/clsGame.vb index 72bf67a..b638b26 100644 --- a/GBM/Classes/clsGame.vb +++ b/GBM/Classes/clsGame.vb @@ -46,7 +46,7 @@ Public Class clsGame ReadOnly Property CompoundKey As String Get - Return ProcessName & ":" & SafeName + Return ProcessName & ":" & KeySafeName End Get End Property @@ -69,12 +69,18 @@ Public Class clsGame End Get End Property - ReadOnly Property SafeName As String + ReadOnly Property FileSafeName As String Get Return mgrPath.ValidateForFileSystem(sGameName) End Get End Property + ReadOnly Property KeySafeName As String + Get + Return sGameName.Replace(":", "_") + End Get + End Property + Property ProcessName As String Set(value As String) sProcessName = value diff --git a/GBM/Forms/frmAddWizard.vb b/GBM/Forms/frmAddWizard.vb index f124a2e..e294c18 100644 --- a/GBM/Forms/frmAddWizard.vb +++ b/GBM/Forms/frmAddWizard.vb @@ -265,7 +265,7 @@ Public Class frmAddWizard Private Sub DoSave() Dim hshDupeCheck As New Hashtable - Dim sNewGame As String = oGameToSave.ProcessName & ":" & oGameToSave.SafeName + Dim sNewGame As String = oGameToSave.ProcessName & ":" & oGameToSave.KeySafeName For Each o As clsGame In GameData.Values hshDupeCheck.Add(o.CompoundKey, String.Empty) diff --git a/GBM/Forms/frmGameManager.vb b/GBM/Forms/frmGameManager.vb index 78d86cc..77ee63c 100644 --- a/GBM/Forms/frmGameManager.vb +++ b/GBM/Forms/frmGameManager.vb @@ -183,14 +183,14 @@ Public Class frmGameManager sFileName = BackupFolder & oBackupItem.FileName 'Rename Backup File - sNewFileName = Path.GetDirectoryName(sFileName) & Path.DirectorySeparatorChar & Path.GetFileName(sFileName).Replace(oOriginalApp.SafeName, oNewApp.SafeName) + sNewFileName = Path.GetDirectoryName(sFileName) & Path.DirectorySeparatorChar & Path.GetFileName(sFileName).Replace(oOriginalApp.FileSafeName, oNewApp.FileSafeName) If File.Exists(sFileName) And Not sFileName = sNewFileName Then FileSystem.Rename(sFileName, sNewFileName) End If 'Rename Directory sDirectory = Path.GetDirectoryName(sFileName) - sNewDirectory = sDirectory.Replace(oOriginalApp.SafeName, oNewApp.SafeName) + sNewDirectory = sDirectory.Replace(oOriginalApp.FileSafeName, oNewApp.FileSafeName) If sDirectory <> sNewDirectory Then If Directory.Exists(sDirectory) And Not sDirectory = sNewDirectory Then FileSystem.Rename(sDirectory, sNewDirectory) @@ -198,7 +198,7 @@ Public Class frmGameManager End If oBackupItem.Name = oNewApp.Name - oBackupItem.FileName = oBackupItem.FileName.Replace(oOriginalApp.SafeName, oNewApp.SafeName) + oBackupItem.FileName = oBackupItem.FileName.Replace(oOriginalApp.FileSafeName, oNewApp.FileSafeName) mgrManifest.DoManifestUpdateByID(oBackupItem, mgrSQLite.Database.Local) Next oLocalBackupData = mgrManifest.ReadLatestManifest(mgrSQLite.Database.Local) @@ -210,7 +210,7 @@ Public Class frmGameManager For Each oBackupItem As clsBackup In oBackupItems oBackupItem.Name = oNewApp.Name - oBackupItem.FileName = oBackupItem.FileName.Replace(oOriginalApp.SafeName, oNewApp.SafeName) + oBackupItem.FileName = oBackupItem.FileName.Replace(oOriginalApp.FileSafeName, oNewApp.FileSafeName) mgrManifest.DoManifestUpdateByID(oBackupItem, mgrSQLite.Database.Remote) Next oRemoteBackupData = mgrManifest.ReadLatestManifest(mgrSQLite.Database.Remote) diff --git a/GBM/Managers/mgrBackup.vb b/GBM/Managers/mgrBackup.vb index ff50130..6094ce3 100644 --- a/GBM/Managers/mgrBackup.vb +++ b/GBM/Managers/mgrBackup.vb @@ -107,8 +107,8 @@ Public Class mgrBackup Dim lAvailableSpace As Long Dim lFolderSize As Long - If oSettings.CreateSubFolder Then sBackupFile = sBackupFile & Path.DirectorySeparatorChar & oGame.SafeName - sBackupFile = sBackupFile & Path.DirectorySeparatorChar & oGame.SafeName & ".7z" + If oSettings.CreateSubFolder Then sBackupFile = sBackupFile & Path.DirectorySeparatorChar & oGame.FileSafeName + sBackupFile = sBackupFile & Path.DirectorySeparatorChar & oGame.FileSafeName & ".7z" 'Verify saved game path sSavePath = VerifySavePath(oGame) @@ -199,7 +199,7 @@ Public Class mgrBackup RaiseEvent UpdateBackupInfo(oGame) If oSettings.CreateSubFolder Then - sBackupFile = sBackupFile & Path.DirectorySeparatorChar & oGame.SafeName + sBackupFile = sBackupFile & Path.DirectorySeparatorChar & oGame.FileSafeName Try If Not Directory.Exists(sBackupFile) Then Directory.CreateDirectory(sBackupFile) @@ -212,9 +212,9 @@ Public Class mgrBackup If oGame.AppendTimeStamp Then CheckOldBackups(oGame) - sBackupFile = sBackupFile & Path.DirectorySeparatorChar & oGame.SafeName & sTimeStamp & ".7z" + sBackupFile = sBackupFile & Path.DirectorySeparatorChar & oGame.FileSafeName & sTimeStamp & ".7z" Else - sBackupFile = sBackupFile & Path.DirectorySeparatorChar & oGame.SafeName & ".7z" + sBackupFile = sBackupFile & Path.DirectorySeparatorChar & oGame.FileSafeName & ".7z" End If If bDoBackup Then diff --git a/GBM/Managers/mgrMonitorList.vb b/GBM/Managers/mgrMonitorList.vb index f73459d..6dbe92a 100644 --- a/GBM/Managers/mgrMonitorList.vb +++ b/GBM/Managers/mgrMonitorList.vb @@ -86,7 +86,7 @@ Public Class mgrMonitorList Select Case eListType Case eListTypes.FullList 'Don't wrap this, if it fails there's a problem with the database - hshList.Add(oGame.ProcessName & ":" & oGame.SafeName, oGame) + hshList.Add(oGame.ProcessName & ":" & oGame.KeySafeName, oGame) Case eListTypes.ScanList For Each de As DictionaryEntry In hshList bIsDupe = False @@ -116,7 +116,7 @@ Public Class mgrMonitorList If bIsDupe Then DirectCast(hshList.Item(oCompareGame.ProcessName), clsGame).Duplicate = True - oGame.ProcessName = oGame.ProcessName & ":" & oGame.SafeName + oGame.ProcessName = oGame.ProcessName & ":" & oGame.KeySafeName oGame.Duplicate = True End If Next diff --git a/GBM/Managers/mgrXML.vb b/GBM/Managers/mgrXML.vb index 0fe80ba..d904bf7 100644 --- a/GBM/Managers/mgrXML.vb +++ b/GBM/Managers/mgrXML.vb @@ -42,7 +42,7 @@ Public Class mgrXML 'This should be wrapped just in case we get some bad data Try - hshList.Add(oGame.ProcessName & ":" & oGame.SafeName, oGame) + hshList.Add(oGame.ProcessName & ":" & oGame.KeySafeName, oGame) Catch e As Exception 'Do Nothing End Try