Ensure xmlFree(NULL) is a no-op instead of a core dump. Per report from
Sergey Burladyan, there are at least some dank corners of libxml2 that assume this behavior, even though their published documentation suggests they shouldn't. This is only really a live problem in 8.3, but the code is still there for possible debugging use in HEAD, so patch both branches.
This commit is contained in:
parent
f371fda397
commit
0dcc73fea4
|
@ -7,7 +7,7 @@
|
|||
* Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* $PostgreSQL: pgsql/src/backend/utils/adt/xml.c,v 1.90 2009/06/09 22:00:57 petere Exp $
|
||||
* $PostgreSQL: pgsql/src/backend/utils/adt/xml.c,v 1.91 2009/06/10 03:44:35 tgl Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
|
@ -1293,7 +1293,9 @@ xml_repalloc(void *ptr, size_t size)
|
|||
static void
|
||||
xml_pfree(void *ptr)
|
||||
{
|
||||
pfree(ptr);
|
||||
/* At least some parts of libxml assume xmlFree(NULL) is allowed */
|
||||
if (ptr)
|
||||
pfree(ptr);
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue