]> git.ipfire.org Git - thirdparty/postgresql.git/commitdiff
Fix breakage of get_ps_display() in the PS_USE_NONE case.
authorTom Lane <tgl@sss.pgh.pa.us>
Sun, 27 Mar 2022 16:57:46 +0000 (12:57 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Sun, 27 Mar 2022 16:57:52 +0000 (12:57 -0400)
Commit 8c6d30f21 caused this function to fail to set *displen
in the PS_USE_NONE code path.  If the variable's previous value
had been negative, that'd lead to a memory clobber at some call
sites.  We'd managed not to notice due to very thin test coverage
of such configurations, but this appears to explain buildfarm member
lorikeet's recent struggles.

Credit to Andrew Dunstan for spotting the problem.  Back-patch
to v13 where the bug was introduced.

Discussion: https://postgr.es/m/136102.1648320427@sss.pgh.pa.us

src/backend/utils/misc/ps_status.c

index 5819faaf2d2f8c1c4a9bef1de126fc084275c72c..bad8afb1b2ddfdef4e605a620910750bb3dda03b 100644 (file)
@@ -443,6 +443,7 @@ get_ps_display(int *displen)
 
        return ps_buffer + ps_buffer_fixed_size;
 #else
+       *displen = 0;
        return "";
 #endif
 }