Hi, On 29/01/14 10:11, Jeff Janes wrote: > I'm getting this warning now with gcc (GCC) 4.4.7:
Interesting. I don't get that warning. But the compiler is (formally) right. > pg_shmem.c: In function 'PGSharedMemoryCreate': > pg_shmem.c:332: warning: 'allocsize' may be used uninitialized in this > function > pg_shmem.c:332: note: 'allocsize' was declared here Attached patch should fix that. Best regards, -- Christian Kruse http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services
diff --git a/src/backend/port/sysv_shmem.c b/src/backend/port/sysv_shmem.c index f7596bf..c39dfb6 100644 --- a/src/backend/port/sysv_shmem.c +++ b/src/backend/port/sysv_shmem.c @@ -329,7 +329,7 @@ PGSharedMemoryIsInUse(unsigned long id1, unsigned long id2) static void * CreateAnonymousSegment(Size *size) { - Size allocsize; + Size allocsize = *size; void *ptr = MAP_FAILED; #ifndef MAP_HUGETLB @@ -358,7 +358,6 @@ CreateAnonymousSegment(Size *size) */ int hugepagesize = 2 * 1024 * 1024; - allocsize = *size; if (allocsize % hugepagesize != 0) allocsize += hugepagesize - (allocsize % hugepagesize); @@ -372,7 +371,6 @@ CreateAnonymousSegment(Size *size) if (huge_tlb_pages == HUGE_TLB_OFF || (huge_tlb_pages == HUGE_TLB_TRY && ptr == MAP_FAILED)) { - allocsize = *size; ptr = mmap(NULL, *size, PROT_READ | PROT_WRITE, PG_MMAP_FLAGS, -1, 0); }
pgpzNJrOrDmZa.pgp
Description: PGP signature