From cbdaa27f9798bfeb3bd04afadb5dccdcda361de3 Mon Sep 17 00:00:00 2001 From: Tom Lane <tgl@sss.pgh.pa.us> Date: Wed, 12 Jul 2000 05:15:20 +0000 Subject: [PATCH] Repair missing MEMORY_CONTEXT_CHECKING logic for realloc(). Doesn't anyone around here run regression tests before submitting patches, or before committing them? --- src/backend/utils/mmgr/aset.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/backend/utils/mmgr/aset.c b/src/backend/utils/mmgr/aset.c index 6c6f58b0222..12affe6731f 100644 --- a/src/backend/utils/mmgr/aset.c +++ b/src/backend/utils/mmgr/aset.c @@ -11,7 +11,7 @@ * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/mmgr/aset.c,v 1.30 2000/07/12 02:37:23 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/mmgr/aset.c,v 1.31 2000/07/12 05:15:20 tgl Exp $ * * NOTE: * This is a new (Feb. 05, 1999) implementation of the allocation set @@ -696,7 +696,17 @@ AllocSetRealloc(MemoryContext context, void *pointer, Size size) */ oldsize = AllocPointerGetSize(pointer); if (oldsize >= size) + { +#ifdef MEMORY_CONTEXT_CHECKING + AllocChunk chunk = AllocPointerGetChunk(pointer); + + /* mark memory for memory leak searching */ + memset(((char *) chunk) + (ALLOC_CHUNKHDRSZ + size), + 0x7F, chunk->size - size); + chunk->data_size = size; +#endif return pointer; + } if (oldsize >= ALLOC_BIGCHUNK_LIMIT) { @@ -711,7 +721,6 @@ AllocSetRealloc(MemoryContext context, void *pointer, Size size) AllocBlock block = set->blocks; AllocBlock prevblock = NULL; Size blksize; - #ifdef MEMORY_CONTEXT_CHECKING Size data_size = size; #endif -- GitLab