BUG #15312: Possible access to unintended variable in"postgres/src/backend/postmaster/pgstat.c" line 2698 - Mailing list pgsql-bugs

From PG Bug reporting form
Subject BUG #15312: Possible access to unintended variable in"postgres/src/backend/postmaster/pgstat.c" line 2698
Date
Msg-id 153363913073.1303.6518849192351268091@wrigleys.postgresql.org
Whole thread Raw
Responses Re: BUG #15312: Possible access to unintended variable in "postgres/src/backend/postmaster/pgstat.c" line 2698
Re: BUG #15312: Possible access to unintended variable in"postgres/src/backend/postmaster/pgstat.c" line 2698
List pgsql-bugs
The following bug has been logged on the website:

Bug reference:      15312
Logged by:          Petru-Florin Mihancea
Email address:      petrum@gmail.com
PostgreSQL version: Unsupported/Unknown
Operating system:   Macosx
Description:

While experimenting with a CodeSonar plugin we develop, we noticed a
potential bug in file "postgres/src/backend/postmaster/pgstat.c" line 2698
function CreateSharedBackendStatus.

/* Create or attach to the shared activity buffer */
BackendActivityBufferSize = mul_size(pgstat_track_activity_query_size,
                                     NumBackendStatSlots);
BackendActivityBuffer = (char *)
    ShmemInitStruct("Backend Activity Buffer",
                    BackendActivityBufferSize,
                    &found);
if (!found)
{
    MemSet(BackendActivityBuffer, 0, size); //HERE

    /* Initialize st_activity pointers. */
    buffer = BackendActivityBuffer;
    for (i = 0; i < NumBackendStatSlots; i++)
    {
        BackendStatusArray[i].st_activity_raw = buffer;
        buffer += pgstat_track_activity_query_size;
    }
}

Shouldn't BackendActivityBufferSize be accessed in the marked line instead
of size? 

Thanks,
Petru Florin Mihancea


pgsql-bugs by date:

Previous
From: PG Bug reporting form
Date:
Subject: BUG #15311: Incorrect comparison of the empty array with the value ofthe custom type from the table field
Next
From: Michael Paquier
Date:
Subject: Re: BUG #15310: pg_upgrade dissociates event triggers from extensions