pgsql: Fix bug in TOC file error message printing - Mailing list pgsql-committers

From Daniel Gustafsson
Subject pgsql: Fix bug in TOC file error message printing
Date
Msg-id E1mcnAH-0000IA-Rc@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix bug in TOC file error message printing

If the blob TOC file cannot be parsed, the error message was failing
to print the filename as the variable holding it was shadowed by the
destination buffer for parsing.  When the filename fails to parse,
the error will print an empty string:

 ./pg_restore -d foo -F d dump
 pg_restore: error: invalid line in large object TOC file "": ..

..instead of the intended error message:

 ./pg_restore -d foo -F d dump
 pg_restore: error: invalid line in large object TOC file "dump/blobs.toc": ..

Fix by renaming both variables as the shared name was too generic to
store either and still convey what the variable held.

Backpatch all the way down to 9.6.

Reviewed-by: Tom Lane
Discussion: https://postgr.es/m/A2B151F5-B32B-4F2C-BA4A-6870856D9BDE@yesql.se
Backpatch-through: 9.6

Branch
------
REL_11_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/038892c8101845b6b4364cf2f5773207c4a4525c

Modified Files
--------------
src/bin/pg_dump/pg_backup_directory.c | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)


pgsql-committers by date:

Previous
From: Daniel Gustafsson
Date:
Subject: pgsql: Fix sscanf limits in pg_basebackup and pg_dump
Next
From: Daniel Gustafsson
Date:
Subject: pgsql: Fix bug in TOC file error message printing