MOON
Server: Apache/2.2.21 (Unix) mod_ssl/2.2.21 OpenSSL/0.9.8e-fips-rhel5 mod_auth_passthrough/2.1 mod_bwlimited/1.4
System: Linux vps.panamaemb.org.sg 3.10.0-1160.80.1.vz7.191.4 #1 SMP Thu Dec 15 20:31:06 MSK 2022 x86_64
User: panama (500)
PHP: 5.2.17
Disabled: NONE
Upload Files
File: //proc/2/task/2/root/usr/share/doc/libxml2-python-2.6.23/examples/error.py
#!/usr/bin/python -u
#
# This test exercise the redirection of error messages with a
# functions defined in Python.
#
import sys
import libxml2

# Memory debug specific
libxml2.debugMemory(1)

expect='--> I/O --> warning : --> failed to load external entity "missing.xml"\n'
err=""
def callback(ctx, str):
     global err

     err = err + "%s %s" % (ctx, str)

got_exc = 0
libxml2.registerErrorHandler(callback, "-->")
try:
    doc = libxml2.parseFile("missing.xml")
except libxml2.parserError:
    got_exc = 1

if got_exc == 0:
    print "Failed to get a parser exception"
    sys.exit(1)

if err != expect:
    print "error"
    print "received %s" %(err)
    print "expected %s" %(expect)
    sys.exit(1)

i = 10000
while i > 0:
    try:
        doc = libxml2.parseFile("missing.xml")
    except libxml2.parserError:
        got_exc = 1
    err = ""
    i = i - 1

# Memory debug specific
libxml2.cleanupParser()
if libxml2.debugMemory(1) == 0:
    print "OK"
else:
    print "Memory leak %d bytes" % (libxml2.debugMemory(1))
    libxml2.dumpMemory()