]> git.ipfire.org Git - thirdparty/postgresql.git/commitdiff
Fix variable shadowing in procarray.c.
authorFujii Masao <fujii@postgresql.org>
Thu, 16 Sep 2021 04:07:29 +0000 (13:07 +0900)
committerFujii Masao <fujii@postgresql.org>
Thu, 16 Sep 2021 04:08:06 +0000 (13:08 +0900)
ProcArrayGroupClearXid function has a parameter named "proc",
but the same name was used for its local variables. This commit fixes
this variable shadowing, to improve code readability.

Back-patch to all supported versions, to make future back-patching
easy though this patch is classified as refactoring only.

Reported-by: Ranier Vilela
Author: Ranier Vilela, Aleksander Alekseev
https://postgr.es/m/CAEudQAqyoTZC670xWi6w-Oe2_Bk1bfu2JzXz6xRfiOUzm7xbyQ@mail.gmail.com

src/backend/storage/ipc/procarray.c

index 01d6022295c5d4daaec68a41735990bf19981310..3a80ca854fcae90d112088573764ff389bffbb55 100644 (file)
@@ -557,13 +557,13 @@ ProcArrayGroupClearXid(PGPROC *proc, TransactionId latestXid)
        /* Walk the list and clear all XIDs. */
        while (nextidx != INVALID_PGPROCNO)
        {
-               PGPROC     *proc = &allProcs[nextidx];
+               PGPROC     *nextproc = &allProcs[nextidx];
                PGXACT     *pgxact = &allPgXact[nextidx];
 
-               ProcArrayEndTransactionInternal(proc, pgxact, proc->procArrayGroupMemberXid);
+               ProcArrayEndTransactionInternal(nextproc, pgxact, nextproc->procArrayGroupMemberXid);
 
                /* Move to next proc in list. */
-               nextidx = pg_atomic_read_u32(&proc->procArrayGroupNext);
+               nextidx = pg_atomic_read_u32(&nextproc->procArrayGroupNext);
        }
 
        /* We're done with the lock now. */
@@ -578,18 +578,18 @@ ProcArrayGroupClearXid(PGPROC *proc, TransactionId latestXid)
         */
        while (wakeidx != INVALID_PGPROCNO)
        {
-               PGPROC     *proc = &allProcs[wakeidx];
+               PGPROC     *nextproc = &allProcs[wakeidx];
 
-               wakeidx = pg_atomic_read_u32(&proc->procArrayGroupNext);
-               pg_atomic_write_u32(&proc->procArrayGroupNext, INVALID_PGPROCNO);
+               wakeidx = pg_atomic_read_u32(&nextproc->procArrayGroupNext);
+               pg_atomic_write_u32(&nextproc->procArrayGroupNext, INVALID_PGPROCNO);
 
                /* ensure all previous writes are visible before follower continues. */
                pg_write_barrier();
 
-               proc->procArrayGroupMember = false;
+               nextproc->procArrayGroupMember = false;
 
-               if (proc != MyProc)
-                       PGSemaphoreUnlock(proc->sem);
+               if (nextproc != MyProc)
+                       PGSemaphoreUnlock(nextproc->sem);
        }
 }