postgres.git / summary / log / commit / refs

commit    ff03112bdc70541382b39fa4e36b9a9ad93b4b73
Author:   Alvaro Herrera <alvherre@alvh.no-ip.org>
Date:     Fri Jun 15 19:00:41 2018 +0000
First released in: 11.0

    Fix off-by-one bug in XactLogCommitRecord
    
    Commit 1eb6d6527aae introduced zeroed alignment bytes in the GID field
    of commit/abort WAL records.  Fixup commit cf5a1890592b later changed
    that representation into a regular cstring with a single terminating
    zero byte, but it also introduced an off-by-one mistake.  Fix that.
    
    Author: Nikhil Sontakke
    Reported-by: Nikhil Sontakke
    Discussion: https://postgr.es/m/CAMGcDxey6dG1DP34_tJMoWPcp5sPJUAL4K5CayUUXLQSx2GQpA@mail.gmail.com


src/backend/access/transam/xact.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/access/transam/xact.c b/src/backend/access/transam/xact.c index f4e5ea84b99..b51eeb087e8 100644 --- a/src/backend/access/transam/xact.c +++ b/src/backend/access/transam/xact.c @@ -5365,7 +5365,7 @@ XactLogCommitRecord(TimestampTz commit_time, { XLogRegisterData((char *) (&xl_twophase), sizeof(xl_xact_twophase)); if (xl_xinfo.xinfo & XACT_XINFO_HAS_GID) - XLogRegisterData((char *) twophase_gid, strlen(twophase_gid)); + XLogRegisterData((char *) twophase_gid, strlen(twophase_gid) + 1); } if (xl_xinfo.xinfo & XACT_XINFO_HAS_ORIGIN) [parent: dad8bed04ab9]