From 017561a2e1da047b94e224e27062219fe7db11bb Mon Sep 17 00:00:00 2001 From: Sven Hesse Date: Sun, 28 Dec 2008 18:00:19 +0000 Subject: Fixing the save/load list box's width svn-id: r35591 --- engines/gob/saveload_v6.cpp | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-) (limited to 'engines/gob/saveload_v6.cpp') diff --git a/engines/gob/saveload_v6.cpp b/engines/gob/saveload_v6.cpp index 694b96f1ec..7396642e33 100644 --- a/engines/gob/saveload_v6.cpp +++ b/engines/gob/saveload_v6.cpp @@ -50,7 +50,6 @@ SaveLoad_v6::SaveLoad_v6(GobEngine *vm, const char *targetName) : sprintf(_saveFiles[0].destName, "%s.s00", targetName); _varSize = 0; - _hasIndex = false; } SaveLoad_v6::~SaveLoad_v6() { @@ -145,8 +144,7 @@ int SaveLoad_v6::getSlotRemainder(int32 offset) const { } int32 SaveLoad_v6::getSizeGame(SaveFile &saveFile) { - if (!_hasIndex) - return -1; + refreshIndex(); Common::SaveFileManager *saveMan = g_system->getSavefileManager(); Common::InSaveFile *in; @@ -178,11 +176,6 @@ bool SaveLoad_v6::loadGame(SaveFile &saveFile, return false; } - if (!_hasIndex) { - warning("No index written yet"); - return false; - } - refreshIndex(); byte *sizes = new byte[size]; @@ -234,7 +227,6 @@ bool SaveLoad_v6::saveGame(SaveFile &saveFile, } _vm->_inter->_variables->copyTo(dataVar, _indexBuffer + offset, 0, size); - _hasIndex = true; } else { int slot = getSlot(offset); @@ -248,11 +240,6 @@ bool SaveLoad_v6::saveGame(SaveFile &saveFile, return false; } - if (!_hasIndex) { - warning("No index written yet"); - return false; - } - SaveLoad::setCurrentSlot(saveFile.destName, slot); byte sizes[40]; @@ -295,7 +282,9 @@ void SaveLoad_v6::refreshIndex() { memset(names, 0, 40); } - WRITE_LE_UINT32(_indexBuffer + 160, max + 1); + memset(_indexBuffer + 40, 0xFF, 40); // Joker + _indexBuffer[159] = 0x03; // # of joker unused + WRITE_LE_UINT32(_indexBuffer + 160, max + 1); // # of saves } } // End of namespace Gob -- cgit v1.2.3