diff options
Diffstat (limited to 'src/client/Client.cpp')
| -rw-r--r-- | src/client/Client.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/client/Client.cpp b/src/client/Client.cpp index 0f6273c..ad5e458 100644 --- a/src/client/Client.cpp +++ b/src/client/Client.cpp @@ -818,8 +818,16 @@ SaveFile * Client::GetStamp(std::string stampID) stampFile.close(); SaveFile * file = new SaveFile(std::string(stampID).c_str()); - GameSave * tempSave = new GameSave((char *)tempData, fileSize); - file->SetGameSave(tempSave); + GameSave * tempSave = NULL; + try + { + GameSave * tempSave = new GameSave((char *)tempData, fileSize); + file->SetGameSave(tempSave); + } + catch (ParseException & e) + { + std::cerr << "Client: Invalid stamp file, " << stampID << " " << std::string(e.what()) << std::endl; + } return file; } else |
