diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2012-06-18 15:43:40 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2012-06-18 15:43:40 (GMT) |
| commit | 7ffaa421d184ef63c9e34fa80b2438d1ec670161 (patch) | |
| tree | 954bc49bd7304d6054612d1fe8ad42e5ccb64ecd /src/game/GameModel.cpp | |
| parent | 5e301ba17c0b73c52189bac329b20143213817bd (diff) | |
| download | powder-7ffaa421d184ef63c9e34fa80b2438d1ec670161.zip powder-7ffaa421d184ef63c9e34fa80b2438d1ec670161.tar.gz | |
GameModel manages currentSave instance
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(); |
