Fix parsePGArray() error checking in pg_dump.
authorThomas Munro <tmunro@postgresql.org>
Mon, 9 Nov 2020 03:01:51 +0000 (16:01 +1300)
committerThomas Munro <tmunro@postgresql.org>
Mon, 9 Nov 2020 03:26:47 +0000 (16:26 +1300)
commit3636efa11945af64479995609762b2626c6c319a
tree4140cc94d29acd7c41ed48807243402ed9158e34
parent8b39345a9d9abd1c371f8458301a227d0abb93b2
Fix parsePGArray() error checking in pg_dump.

Coverity complained about a defect in commit 257836a7:

  Calling "parsePGArray" without checking return value (as is
  done elsewhere 11 out of 13 times).

Fix, and also check for empty strings explicitly (NULL as represented by
PQgetvalue()).  That worked correctly before only because parsePGArray()
happens to set *nitems = 0 when it fails on an empty string.  Also
convert a sanity check assertion to an error to be more paranoid, and
pgindent a nearby line.

Reported-by: Michael Paquier <michael@paquier.xyz>
src/bin/pg_dump/pg_dump.c