[XML-SIG] [ pyxml-Bugs-614875 ] sigsegv with large input

noreply@sourceforge.net noreply@sourceforge.net
Thu, 26 Sep 2002 02:30:32 -0700


Bugs item #614875, was opened at 2002-09-26 11:30
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=106473&aid=614875&group_id=6473

Category: pyexpat
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Joerg Beyer (jbeyer)
Assigned to: Fred L. Drake, Jr. (fdrake)
Summary: sigsegv with large input

Initial Comment:
When I was parsing a large input file with a sax2
parser,I triggered
a sigsegv. I was able to reduce the input to the still
large file, 
that I upload to this bug report.

I use pyxml 0.8.1

This is my python parser script:
------------------------------------------
import xml.sax.sax2exts

parser = xml.sax.sax2exts.XMLParserFactory.make_parser()
parser.setFeature(xml.sax.handler.feature_namespaces, 1)
parser.parse('in.xml')
------------------------------------------

This is the traceback:

(gdb) r parser
Starting program:
/netsite/python/python2.2/bin/python2.2 parser
[New Thread 1024 (runnable)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (runnable)]
0x2ac04302 in chunk_free (ar_ptr=0x2ac8f2c0,
p=0x8356d30) at malloc.c:3100
3100    malloc.c: Datei oder Verzeichnis nicht gefunden.
        in malloc.c
Current language:  auto; currently c
(gdb) bt
#0  0x2ac04302 in chunk_free (ar_ptr=0x2ac8f2c0,
p=0x8356d30) at malloc.c:3100
#1  0x2ac041cf in __libc_free (mem=0x8356d38) at
malloc.c:3023
#2  0x2acbb520 in XML_ParserFree (parser=0x83674f0)
    at extensions/expat/lib/xmlparse.c:1003
#3  0x2acb8f17 in xmlparse_dealloc (self=0x82b919c) at
extensions/pyexpat.c:1294
#4  0x080fa3e7 in PyDict_SetItem (op=0x81f125c,
key=0x82b84c8, value=0x819ab5c)
    at Objects/dictobject.c:373
#5  0x080e1fe7 in instance_setattr (inst=0x82b6e64,
name=0x82b84c8, v=0x819ab5c)
    at Objects/classobject.c:741
#6  0x0806d668 in PyObject_SetAttr (v=0x82b6e64,
name=0x82b84c8, value=0x819ab5c)
    at Objects/object.c:1153
#7  0x0808dc6f in eval_frame (f=0x822f544) at
Python/ceval.c:1606
#8  0x0808f78e in PyEval_EvalCodeEx (co=0x82bac38,
globals=0x82b817c, locals=0x0, 
    args=0x8210094, argcount=1, kws=0x8210098,
kwcount=0, defs=0x0, defcount=0, 
    closure=0x0) at Python/ceval.c:2590
#9  0x0809193d in fast_function (func=0x8353d1c,
pp_stack=0x7fffef84, n=1, na=1, nk=0)
    at Python/ceval.c:3166
#10 0x0808e811 in eval_frame (f=0x820ff34) at
Python/ceval.c:2029
#11 0x0808f78e in PyEval_EvalCodeEx (co=0x823b520,
globals=0x824221c, locals=0x0, 
    args=0x8280908, argcount=2, kws=0x0, kwcount=0,
defs=0x0, defcount=0, closure=0x0)
    at Python/ceval.c:2590
#12 0x080f07fe in function_call (func=0x82563fc,
arg=0x82808fc, kw=0x0)
    at Objects/funcobject.c:374
#13 0x080de562 in PyObject_Call (func=0x82563fc,
arg=0x82808fc, kw=0x0)
    at Objects/abstract.c:1684
#14 0x080e5390 in instancemethod_call (func=0x82563fc,
arg=0x82808fc, kw=0x0)
    at Objects/classobject.c:2276
#15 0x080de562 in PyObject_Call (func=0x82b9494,
arg=0x82808fc, kw=0x0)
    at Objects/abstract.c:1684
#16 0x080919c9 in do_call (func=0x82b9494,
pp_stack=0x7ffff1a4, na=2, nk=0)
    at Python/ceval.c:3267
#17 0x0808e82f in eval_frame (f=0x8292954) at
Python/ceval.c:2032
#18 0x0808f78e in PyEval_EvalCodeEx (co=0x82b9ab8,
globals=0x82b817c, locals=0x0, 
    args=0x81f82c8, argcount=2, kws=0x81f82d0,
kwcount=0, defs=0x0, defcount=0, 
    closure=0x0) at Python/ceval.c:2590
#19 0x0809193d in fast_function (func=0x8353324,
pp_stack=0x7ffff2f4, n=2, na=2, nk=0)
    at Python/ceval.c:3166
#20 0x0808e811 in eval_frame (f=0x81f817c) at
Python/ceval.c:2029
#21 0x0808f78e in PyEval_EvalCodeEx (co=0x8231c38,
globals=0x81f11a4, 
    locals=0x81f11a4, args=0x0, argcount=0, kws=0x0,
kwcount=0, defs=0x0, defcount=0, 
    closure=0x0) at Python/ceval.c:2590
#22 0x080918c8 in PyEval_EvalCode (co=0x8231c38,
globals=0x81f11a4, locals=0x81f11a4)
    at Python/ceval.c:488
#23 0x080ac9d3 in run_node (n=0x8203358,
filename=0x7ffff737 "parser", 
    globals=0x81f11a4, locals=0x81f11a4,
flags=0x7ffff4f8) at Python/pythonrun.c:1079
#24 0x080ac986 in run_err_node (n=0x8203358,
filename=0x7ffff737 "parser", 
    globals=0x81f11a4, locals=0x81f11a4,
flags=0x7ffff4f8) at Python/pythonrun.c:1066
#25 0x080ac5ad in PyRun_FileExFlags (fp=0x81e16e8,
filename=0x7ffff737 "parser", 
    start=257, globals=0x81f11a4, locals=0x81f11a4,
closeit=1, flags=0x7ffff4f8)
    at Python/pythonrun.c:1057
#26 0x080ab0c1 in PyRun_SimpleFileExFlags (fp=0x81e16e8, 
    filename=0x7ffff737 "parser", closeit=1,
flags=0x7ffff4f8)
    at Python/pythonrun.c:685
#27 0x080ac0ac in PyRun_AnyFileExFlags (fp=0x81e16e8,
filename=0x7ffff737 "parser", 
    closeit=1, flags=0x7ffff4f8) at Python/pythonrun.c:495
#28 0x0806a36b in Py_Main (argc=2, argv=0x7ffff584) at
Modules/main.c:364
#29 0x08069c16 in main (argc=2, argv=0x7ffff584) at
./Modules/ccpython.cc:10
#30 0x2abcaa8e in __libc_start_main (main=0x8069c00
<main>, argc=2, argv=0x7ffff584, 
    init=0x8068260 <_init>, fini=0x8173edc <_fini>,
rtld_fini=0x2aab5a20 <_dl_fini>, 
    stack_end=0x7ffff57c) at
../sysdeps/generic/libc-start.c:92
(gdb) 

please ask, if any further information might help you.

    TIA
    Joerg 


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=106473&aid=614875&group_id=6473