]> granicus.if.org Git - postgresql/commit
Fix unsafe coding in ReorderBufferCommit().
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 24 Jan 2015 18:25:22 +0000 (13:25 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 24 Jan 2015 18:25:22 +0000 (13:25 -0500)
commit91964c3ed1c49d9a8670d3f85a660181cc541c7c
tree56ed1eac4dc206d5adc41a45648ad51da471f5cc
parentd51d4ff311d01de8521acedb0a6f7c242648a231
Fix unsafe coding in ReorderBufferCommit().

"iterstate" must be marked volatile since it's changed inside the PG_TRY
block and then used in the PG_CATCH stanza.  Noted by Mark Wilding of
Salesforce.  (We really need to see if we can't get the C compiler to warn
about this.)

Also, reset iterstate to NULL after the mainline ReorderBufferIterTXNFinish
call, to ensure the PG_CATCH block doesn't try to do that a second time.
src/backend/replication/logical/reorderbuffer.c