OSDN Git Service

Fix null-dereference crash in parse_xml_decl().
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 28 May 2011 16:36:04 +0000 (12:36 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 28 May 2011 16:36:04 +0000 (12:36 -0400)
commit5e1365a9650678a531106120e40676a9417971f1
tree7d07b838d14c74ec7070cb6b621ba62b8d18814c
parent4c60a77508ee4f4d895629905265d79feaab108c
Fix null-dereference crash in parse_xml_decl().

parse_xml_decl's header comment says you can pass NULL for any unwanted
output parameter, but it failed to honor this contract for the "standalone"
flag.  The only currently-affected caller is xml_recv, so the net effect is
that sending a binary XML value containing a standalone parameter in its
xml declaration would crash the backend.  Per bug #6044 from Christopher
Dillard.

In passing, remove useless initializations of parse_xml_decl's output
parameters in xml_parse.

Back-patch to 8.3, where this code was introduced.
src/backend/utils/adt/xml.c