Fix melee.cfg loading: correct check for file size, calc fleet value after loading; bug #1099

git-svn-id: svn://svn.code.sf.net/p/sc2/code/trunk@3559 8092fc87-c524-0410-9efc-e669fe64eaf9
This commit is contained in:
avolkov
2011-02-15 13:05:00 +00:00
parent 6ff079b8e8
commit 0870178bb7
4 changed files with 9 additions and 4 deletions
+1
View File
@@ -1,4 +1,5 @@
Changes towards version 0.7: Changes towards version 0.7:
- Fixed loading of melee.cfg (bug #1099) - Alex
- Fixed the 64KB size limitation on key-value files (bug #1112) - Alex - Fixed the 64KB size limitation on key-value files (bug #1112) - Alex
- Update download paths for the new SourceForge File Release system - Michael - Update download paths for the new SourceForge File Release system - Michael
- Fix UAC issues with installer for cleaner Vista/Win7 installs - Michael - Fix UAC issues with installer for cleaner Vista/Win7 installs - Michael
+1 -1
View File
@@ -2004,7 +2004,7 @@ LoadMeleeConfig (MELEE_STATE *pMS)
if (uio_fstat(uio_streamHandle(stream), &sb) == -1) if (uio_fstat(uio_streamHandle(stream), &sb) == -1)
goto err; goto err;
if ((size_t) sb.st_size != (1 + MeleeTeam_size) * NUM_SIDES) if ((size_t) sb.st_size != (1 + MeleeTeam_serialSize) * NUM_SIDES)
goto err; goto err;
} }
+6 -2
View File
@@ -25,7 +25,8 @@
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
// Temporary // Temporary
const size_t MeleeTeam_size = sizeof (MeleeTeam); const size_t MeleeTeam_serialSize = MELEE_FLEET_SIZE +
sizeof (((MeleeTeam*)0)->name);
void void
MeleeTeam_init (MeleeTeam *team) MeleeTeam_init (MeleeTeam *team)
@@ -323,7 +324,10 @@ MeleeSetup_deserializeTeam (MeleeSetup *setup, size_t teamNr,
uio_Stream *stream) uio_Stream *stream)
{ {
MeleeTeam *team = &setup->teams[teamNr]; MeleeTeam *team = &setup->teams[teamNr];
return MeleeTeam_deserialize (team, stream); int ret = MeleeTeam_deserialize (team, stream);
if (ret == 0)
setup->fleetValue[teamNr] = MeleeTeam_getValue (team);
return ret;
} }
int int
+1 -1
View File
@@ -64,7 +64,7 @@ struct MeleeSetup
#endif /* MELEESETUP_INTERNAL */ #endif /* MELEESETUP_INTERNAL */
extern const size_t MeleeTeam_size; extern const size_t MeleeTeam_serialSize;
void MeleeTeam_init (MeleeTeam *team); void MeleeTeam_init (MeleeTeam *team);
void MeleeTeam_uninit (MeleeTeam *team); void MeleeTeam_uninit (MeleeTeam *team);