From 4eadf2d6cd1aef35bea694ae9938cb4d74cf9239 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Sat, 25 Jan 1997 21:01:16 +0000 Subject: [PATCH] More autosize structure error checks. --- src/backend/storage/buffer/buf_init.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/backend/storage/buffer/buf_init.c b/src/backend/storage/buffer/buf_init.c index c16988fc11..1dacabacc8 100644 --- a/src/backend/storage/buffer/buf_init.c +++ b/src/backend/storage/buffer/buf_init.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/storage/buffer/buf_init.c,v 1.5 1997/01/23 18:14:40 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/storage/buffer/buf_init.c,v 1.6 1997/01/25 21:01:16 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -136,7 +136,10 @@ InitBufferPool(IPCKey key) int i; /* check padding of BufferDesc and BufferHdr */ - if (sizeof(struct sbufdesc) != PADDED_SBUFDESC_SIZE) + /* we need both checks because a sbufdesc_padded > PADDED_SBUFDESC_SIZE + will shrink sbufdesc to the required size, which is bad */ + if (sizeof(struct sbufdesc) != PADDED_SBUFDESC_SIZE || + sizeof(struct sbufdesc_padded) > PADDED_SBUFDESC_SIZE) elog(WARN,"Internal error: sbufdesc does not have the proper size, " "contact the Postgres developers"); if (sizeof(struct sbufdesc_unpadded) <= PADDED_SBUFDESC_SIZE/2) -- 2.11.0