diff options
Diffstat (limited to 'src/game/GameModel.cpp')
| -rw-r--r-- | src/game/GameModel.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/game/GameModel.cpp b/src/game/GameModel.cpp index cf9324b..2a18d6b 100644 --- a/src/game/GameModel.cpp +++ b/src/game/GameModel.cpp @@ -182,6 +182,8 @@ GameModel::~GameModel() delete clipboard; if(stamp) delete stamp; + if(currentSave) + delete currentSave; //if(activeTools) // delete[] activeTools; } @@ -279,7 +281,11 @@ void GameModel::SetSave(SaveInfo * newSave) { if(currentSave != newSave) delete currentSave; - currentSave = newSave; + if(newSave == NULL) + currentSave = NULL; + else if(currentSave != newSave) + currentSave = new SaveInfo(*newSave); + if(currentSave && currentSave->GetGameSave()) { GameSave * saveData = currentSave->GetGameSave(); |
