From 804dab2a3ffeaaa248c567d3f1e6061d37752732 Mon Sep 17 00:00:00 2001 From: Eidolon Date: Sun, 10 Nov 2024 10:56:14 -0600 Subject: [PATCH] Revert "Fix savegame taglist resizing" This reverts commit 411cb468aee961e3923f9360cdf691660da0beaf. --- src/p_saveg.cpp | 28 ++++++++++++++++------------ src/z_zone.cpp | 15 --------------- src/z_zone.h | 1 - 3 files changed, 16 insertions(+), 28 deletions(-) diff --git a/src/p_saveg.cpp b/src/p_saveg.cpp index ecf0d16b0..11a7bf06b 100644 --- a/src/p_saveg.cpp +++ b/src/p_saveg.cpp @@ -2478,8 +2478,8 @@ static void UnArchiveSectors(savebuffer_t *save) // Reallocate if size differs. if (ncount != sectors[i].tags.count) { - sectors[i].tags.tags = (mtag_t*)Z_LevelPoolRealloc(sectors[i].tags.tags, sectors[i].tags.count * sizeof(mtag_t), ncount*sizeof(mtag_t)); sectors[i].tags.count = ncount; + sectors[i].tags.tags = (mtag_t*)Z_Realloc(sectors[i].tags.tags, ncount*sizeof(mtag_t), PU_LEVEL, NULL); } for (j = 0; j < ncount; j++) @@ -2741,8 +2741,8 @@ static void UnArchiveLines(savebuffer_t *save) // Reallocate if size differs. if (ncount != lines[i].tags.count) { - lines[i].tags.tags = (mtag_t*)Z_LevelPoolRealloc(lines[i].tags.tags, lines[i].tags.count * sizeof(mtag_t), ncount*sizeof(mtag_t)); lines[i].tags.count = ncount; + lines[i].tags.tags = (mtag_t*)Z_Realloc(lines[i].tags.tags, ncount*sizeof(mtag_t), PU_LEVEL, NULL); } for (j = 0; j < ncount; j++) @@ -6949,23 +6949,25 @@ static boolean P_NetUnArchiveMisc(savebuffer_t *save, boolean reloading) { if (spawnss->tags.count) { + ss->tags.count = spawnss->tags.count; ss->tags.tags = static_cast( memcpy( - Z_LevelPoolRealloc( + Z_Realloc( ss->tags.tags, - ss->tags.count * sizeof(mtag_t), - spawnss->tags.count * sizeof(mtag_t) + spawnss->tags.count * sizeof(mtag_t), + PU_LEVEL, + nullptr ), spawnss->tags.tags, spawnss->tags.count * sizeof(mtag_t) ) ); - ss->tags.count = spawnss->tags.count; + } else { - Z_LevelPoolFree(ss->tags.tags, ss->tags.count * sizeof(mtag_t)); ss->tags.count = 0; + Z_Free(ss->tags.tags); } } @@ -7037,23 +7039,25 @@ static boolean P_NetUnArchiveMisc(savebuffer_t *save, boolean reloading) { if (spawnli->tags.count) { + li->tags.count = spawnli->tags.count; li->tags.tags = static_cast( memcpy( - Z_LevelPoolRealloc( + Z_Realloc( li->tags.tags, - li->tags.count * sizeof(mtag_t), - spawnli->tags.count * sizeof(mtag_t) + spawnli->tags.count * sizeof(mtag_t), + PU_LEVEL, + nullptr ), spawnli->tags.tags, spawnli->tags.count * sizeof(mtag_t) ) ); - li->tags.count = spawnli->tags.count; + } else { - Z_LevelPoolFree(li->tags.tags, li->tags.count * sizeof(mtag_t)); li->tags.count = 0; + Z_Free(li->tags.tags); } } diff --git a/src/z_zone.cpp b/src/z_zone.cpp index 9a05d4899..1d80b8fc6 100644 --- a/src/z_zone.cpp +++ b/src/z_zone.cpp @@ -740,18 +740,3 @@ void Z_LevelPoolFree(void* p, size_t size) } return Z_Free(p); } - -void* Z_LevelPoolRealloc(void* ptr, size_t orig_size, size_t size) -{ - void* newptr = nullptr; - if (size > 0) - { - newptr = Z_LevelPoolCalloc(size); - } - if (orig_size > 0) - { - memcpy(newptr, ptr, orig_size); - Z_LevelPoolFree(ptr, orig_size); - } - return newptr; -} diff --git a/src/z_zone.h b/src/z_zone.h index 48e4fdcda..0e544134f 100644 --- a/src/z_zone.h +++ b/src/z_zone.h @@ -154,7 +154,6 @@ char *Z_StrDup(const char *in); void *Z_LevelPoolMalloc(size_t size); void *Z_LevelPoolCalloc(size_t size); void Z_LevelPoolFree(void *p, size_t size); -void *Z_LevelPoolRealloc(void *p, size_t orig_size, size_t size); #ifdef __cplusplus } // extern "C"