mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-02-22 21:57:21 +03:00
* Makefile.am doc/examples/Makefile.am python/tests/Makefile.am xstc/Makefile.am: try to fix a problem with valgrind. * python/generator.py python/libxml.c python/tests/Makefile.am python/tests/tstmem.py: applied memory leak fix from Brent Hendricks c.f. bug #165349 Daniel
37 lines
717 B
Python
Executable File
37 lines
717 B
Python
Executable File
#!/usr/bin/python -u
|
|
import libxml2
|
|
import libxml2mod
|
|
import sys
|
|
|
|
def error(msg, data):
|
|
pass
|
|
|
|
# Memory debug specific
|
|
libxml2.debugMemory(1)
|
|
|
|
dtd="""<!ELEMENT foo EMPTY>"""
|
|
instance="""<?xml version="1.0"?>
|
|
<foo></foo>"""
|
|
|
|
dtd = libxml2.parseDTD(None, 'test.dtd')
|
|
ctxt = libxml2.newValidCtxt()
|
|
libxml2mod.xmlSetValidErrors(ctxt._o, error, error)
|
|
doc = libxml2.parseDoc(instance)
|
|
ret = doc.validateDtd(ctxt, dtd)
|
|
if ret != 1:
|
|
print "error doing DTD validation"
|
|
sys.exit(1)
|
|
|
|
doc.freeDoc()
|
|
dtd.freeDtd()
|
|
del dtd
|
|
del ctxt
|
|
|
|
# Memory debug specific
|
|
libxml2.cleanupParser()
|
|
if libxml2.debugMemory(1) == 0:
|
|
print "OK"
|
|
else:
|
|
print "Memory leak %d bytes" % (libxml2.debugMemory(1))
|
|
libxml2.dumpMemory()
|