From edee52642f4c7c3feabb9d5e808174ee45040f53 Mon Sep 17 00:00:00 2001 From: danij Date: Sun, 22 May 2011 00:23:15 +0100 Subject: [PATCH] Fixed Doom/Heretic: Attempts to load vanilla saved games would result in SIGSEGV. They aren't working yet, however. Larger changes are necessary to fix the myriad problems with this. --- doomsday/plugins/jdoom/src/p_oldsvg.c | 8 +++----- doomsday/plugins/jheretic/src/p_oldsvg.c | 2 +- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/doomsday/plugins/jdoom/src/p_oldsvg.c b/doomsday/plugins/jdoom/src/p_oldsvg.c index 47b65b3ff5..0fc02a2f32 100644 --- a/doomsday/plugins/jdoom/src/p_oldsvg.c +++ b/doomsday/plugins/jdoom/src/p_oldsvg.c @@ -326,6 +326,7 @@ static void SV_ReadMobj(void) // Thing being chased/attacked for tracers. SV_ReadLong(); + mo->info = info; SV_UpdateReadMobjFlags(mo, 0); mo->state = &STATES[(int) mo->state]; @@ -341,11 +342,8 @@ static void SV_ReadMobj(void) mo->dPlayer->lookDir = 0; /* $unifiedangles */ } P_MobjSetPosition(mo); - mo->info = info; - mo->floorZ = - P_GetFloatp(mo->subsector, DMU_FLOOR_HEIGHT); - mo->ceilingZ = - P_GetFloatp(mo->subsector, DMU_CEILING_HEIGHT); + mo->floorZ = P_GetFloatp(mo->subsector, DMU_FLOOR_HEIGHT); + mo->ceilingZ = P_GetFloatp(mo->subsector, DMU_CEILING_HEIGHT); } void P_v19_UnArchivePlayers(void) diff --git a/doomsday/plugins/jheretic/src/p_oldsvg.c b/doomsday/plugins/jheretic/src/p_oldsvg.c index add9b0cd13..0bd99e34f6 100644 --- a/doomsday/plugins/jheretic/src/p_oldsvg.c +++ b/doomsday/plugins/jheretic/src/p_oldsvg.c @@ -346,6 +346,7 @@ static void SV_v13_ReadMobj(void) mo->spawnSpot.flags = spawnFlags; } + mo->info = info; SV_UpdateReadMobjFlags(mo, 0); mo->state = &STATES[(int) mo->state]; @@ -357,7 +358,6 @@ static void SV_v13_ReadMobj(void) mo->player->plr->mo->dPlayer = mo->player->plr; } P_MobjSetPosition(mo); - mo->info = info; mo->floorZ = P_GetFloatp(mo->subsector, DMU_FLOOR_HEIGHT); mo->ceilingZ = P_GetFloatp(mo->subsector, DMU_CEILING_HEIGHT); }