version 1.1.1.1, 2012/02/21 23:38:00
|
version 1.1.1.2, 2014/06/15 19:53:34
|
Line 1
|
Line 1
|
#!/usr/bin/python -u |
#!/usr/bin/python -u |
import sys |
import sys |
import libxml2 |
import libxml2 |
import StringIO | try: |
| import StringIO |
| str_io = StringIO.StringIO |
| except: |
| import io |
| str_io = io.StringIO |
|
|
# Memory debug specific |
# Memory debug specific |
libxml2.debugMemory(1) |
libxml2.debugMemory(1) |
|
|
def myResolver(URL, ID, ctxt): |
def myResolver(URL, ID, ctxt): |
return(StringIO.StringIO("<foo/>")) | return(str_io("<foo/>")) |
|
|
libxml2.setEntityLoader(myResolver) |
libxml2.setEntityLoader(myResolver) |
|
|
doc = libxml2.parseFile("doesnotexist.xml") |
doc = libxml2.parseFile("doesnotexist.xml") |
root = doc.children |
root = doc.children |
if root.name != "foo": |
if root.name != "foo": |
print "root element name error" | print("root element name error") |
sys.exit(1) |
sys.exit(1) |
doc.freeDoc() |
doc.freeDoc() |
|
|
Line 23 while i < 5000:
|
Line 28 while i < 5000:
|
doc = libxml2.parseFile("doesnotexist.xml") |
doc = libxml2.parseFile("doesnotexist.xml") |
root = doc.children |
root = doc.children |
if root.name != "foo": |
if root.name != "foo": |
print "root element name error" | print("root element name error") |
sys.exit(1) |
sys.exit(1) |
doc.freeDoc() |
doc.freeDoc() |
i = i + 1 |
i = i + 1 |
Line 32 while i < 5000:
|
Line 37 while i < 5000:
|
# Memory debug specific |
# Memory debug specific |
libxml2.cleanupParser() |
libxml2.cleanupParser() |
if libxml2.debugMemory(1) == 0: |
if libxml2.debugMemory(1) == 0: |
print "OK" | print("OK") |
else: |
else: |
print "Memory leak %d bytes" % (libxml2.debugMemory(1)) | print("Memory leak %d bytes" % (libxml2.debugMemory(1))) |
libxml2.dumpMemory() |
libxml2.dumpMemory() |
|
|