aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/numeric.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2014-11-27 11:12:59 -0500
committerTom Lane <tgl@sss.pgh.pa.us>2014-11-27 11:12:59 -0500
commit168636a9914ed01abc890d9e7e416c07af415d6a (patch)
treea3e319e75f97d4459fe1805add022d5a42124e34 /src/backend/utils/adt/numeric.c
parent95be3436221a00e7234214323d2b8ce86ea38270 (diff)
downloadpostgresql-168636a9914ed01abc890d9e7e416c07af415d6a.tar.gz
postgresql-168636a9914ed01abc890d9e7e416c07af415d6a.zip
Free libxml2/libxslt resources in a safer order.
Mark Simonetti reported that libxslt sometimes crashes for him, and that swapping xslt_process's object-freeing calls around to do them in reverse order of creation seemed to fix it. I've not reproduced the crash, but valgrind clearly shows a reference to already-freed memory, which is consistent with the idea that shutdown of the xsltTransformContext is trying to reference the already-freed stylesheet or input document. With this patch, valgrind is no longer unhappy. I have an inquiry in to see if this is a libxslt bug or if we're just abusing the library; but even if it's a library bug, we'd want to adjust our code so it doesn't fail with unpatched libraries. Back-patch to all supported branches, because we've been doing this in the wrong(?) order for a long time.
Diffstat (limited to 'src/backend/utils/adt/numeric.c')
0 files changed, 0 insertions, 0 deletions