diff --git a/src/backend/port/sysv_shmem.c b/src/backend/port/sysv_shmem.c index e040400bb15b124c93be8fcce12e9bed264c61a4..98e049380a7981497b7feaf2d0550294b95dc4e4 100644 --- a/src/backend/port/sysv_shmem.c +++ b/src/backend/port/sysv_shmem.c @@ -65,7 +65,7 @@ typedef int IpcMemoryId; /* shared memory ID returned by shmget(2) */ unsigned long UsedShmemSegID = 0; void *UsedShmemSegAddr = NULL; static Size AnonymousShmemSize; -static PGShmemHeader *AnonymousShmem; +static void *AnonymousShmem; static void *InternalIpcMemoryCreate(IpcMemoryKey memKey, Size size); static void IpcMemoryDetach(int status, Datum shmaddr); @@ -382,7 +382,7 @@ PGSharedMemoryCreate(Size size, bool makePrivate, int port) PGShmemHeader *hdr; IpcMemoryId shmid; struct stat statbuf; - Size allocsize = size; + Size sysvsize = size; /* Room for a header? */ Assert(size > MAXALIGN(sizeof(PGShmemHeader))); @@ -440,7 +440,7 @@ PGSharedMemoryCreate(Size size, bool makePrivate, int port) AnonymousShmemSize = size; /* Now we need only allocate a minimal-sized SysV shmem block. */ - allocsize = sizeof(PGShmemHeader); + sysvsize = sizeof(PGShmemHeader); } #endif @@ -453,7 +453,7 @@ PGSharedMemoryCreate(Size size, bool makePrivate, int port) for (NextShmemSegID++;; NextShmemSegID++) { /* Try to create new segment */ - memAddress = InternalIpcMemoryCreate(NextShmemSegID, allocsize); + memAddress = InternalIpcMemoryCreate(NextShmemSegID, sysvsize); if (memAddress) break; /* successful create and attach */ @@ -492,7 +492,7 @@ PGSharedMemoryCreate(Size size, bool makePrivate, int port) /* * Now try again to create the segment. */ - memAddress = InternalIpcMemoryCreate(NextShmemSegID, allocsize); + memAddress = InternalIpcMemoryCreate(NextShmemSegID, sysvsize); if (memAddress) break; /* successful create and attach */ @@ -540,8 +540,7 @@ PGSharedMemoryCreate(Size size, bool makePrivate, int port) if (AnonymousShmem == NULL) return hdr; memcpy(AnonymousShmem, hdr, sizeof(PGShmemHeader)); - return AnonymousShmem; - + return (PGShmemHeader *) AnonymousShmem; } #ifdef EXEC_BACKEND