mapnik-org/mapnik — Issue #564: segfault if entities cannot be parsed
Author: artemp
Created: 2011-10-11 08:02:10+00:00
State: open
Labels: Core_Library

This happens if you forget to run generate_xml.py with the osm.xml:

{{{
Process: Python [69304]
Path: /System/Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python
Identifier: Python
Version: ??? (???)
Code Type: X86-64 (Native)
Parent Process: bash [67770]

PlugIn Path: /usr/local/lib/libmapnik2.dylib
PlugIn Identifier: libmapnik2.dylib
PlugIn Version: 0.8.0 (compatibility 0.8.0)

Date/Time: 2010-07-06 16:06:54.636 -0700
OS Version: Mac OS X 10.6.4 (10F569)
Report Version: 6

Interval Since Last Report: 825121 sec
Crashes Since Last Report: 76
Per-App Crashes Since Last Report: 54
Anonymous UUID: CDCA5744-BE4E-4C7D-883F-48B64BEFFD2B

Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000007
Crashed Thread: 0 Dispatch queue: com.apple.main-thread

Thread 0 Crashed: Dispatch queue: com.apple.main-thread
0 libxml2.2.dylib	0x00007fff87bdf21c xmlStrdup + 17
1 libxml2.2.dylib	0x00007fff87b92861 xmlCopyPropList + 606
2 libxml2.2.dylib	0x00007fff87b84310 xmlParseReference + 1773
3 libxml2.2.dylib	0x00007fff87b829b8 xmlParseContent + 246
4 libxml2.2.dylib	0x00007fff87b8519f xmlParseElement + 1052
5 libxml2.2.dylib	0x00007fff87b829aa xmlParseContent + 232
6 libxml2.2.dylib	0x00007fff87b8519f xmlParseElement + 1052
7 libxml2.2.dylib	0x00007fff87b829aa xmlParseContent + 232
8 libxml2.2.dylib	0x00007fff87b84986 xmlParseCtxtExternalEntity + 1153
9 libxml2.2.dylib	0x00007fff87c3093b xmlSAX2GetEntity + 283
10 libxml2.2.dylib	0x00007fff87b79b80 xmlParseEntityRef + 233
11 libxml2.2.dylib	0x00007fff87b83da7 xmlParseReference + 388
12 libxml2.2.dylib	0x00007fff87b829b8 xmlParseContent + 246
13 libxml2.2.dylib	0x00007fff87b8519f xmlParseElement + 1052
14 libxml2.2.dylib	0x00007fff87b8720c xmlParseDocument + 856
15 libxml2.2.dylib	0x00007fff87b87373 xmlParseDocument + 1215
16 libmapnik2.dylib	0x000000010196bfd3 mapnik::libxml2_loader::load(std::string const&, boost::property_tree::basic_ptree >&) + 531
17 libmapnik2.dylib	0x0000000101969840 mapnik::read_xml2(std::string const&, boost::property_tree::basic_ptree >&) + 96
18 libmapnik2.dylib	0x000000010188410f mapnik::load_map(mapnik::Map&, std::string const&, bool) + 159
19 _mapnik2.so	0x00000001010dec79 boost::python::objects::caller_py_function_impl > >::operator()(_object*, _object*) + 345
20 libboost_python.dylib	0x0000000100687f7a boost::python::objects::function::call(_object*, _object*) const + 122 (py_function.hpp:143)
21 libboost_python.dylib	0x0000000100688310 boost::detail::function::void_function_ref_invoker0::invoke(boost::detail::function::function_buffer&) + 32 (function.cpp:585)
22 libboost_python.dylib	0x000000010068f8e1 boost::python::detail::exception_handler::operator()(boost::function0 const&) const + 257 (function_template.hpp:1013)
23 _mapnik2.so	0x00000001010d4a32 boost::detail::function::function_obj_invoker2, boost::_bi::list3, boost::arg<2>, boost::_bi::value > >, bool, boost::python::detail::exception_handler const&, boost::function0 const&>::invoke(boost::detail::function::function_buffer&, boost::python::detail::exception_handler const&, boost::function0 const&) + 34
24 libboost_python.dylib	0x000000010068f51b boost::python::handle_exception_impl(boost::function0) + 155 (function_template.hpp:1013)
25 libboost_python.dylib	0x0000000100684fce function_call + 78 (function_template.hpp:854)
26 org.python.python	0x000000010000aff3 PyObject_Call + 112
27 org.python.python	0x000000010008a51a PyEval_EvalFrameEx + 20328
28 org.python.python	0x00000001000892e1 PyEval_EvalFrameEx + 15663
29 org.python.python	0x00000001000892e1 PyEval_EvalFrameEx + 15663
30 org.python.python	0x00000001000892e1 PyEval_EvalFrameEx + 15663
31 org.python.python	0x00000001000892e1 PyEval_EvalFrameEx + 15663
32 org.python.python	0x00000001000892e1 PyEval_EvalFrameEx + 15663
33 org.python.python	0x000000010008acce PyEval_EvalCodeEx + 1803
34 org.python.python	0x000000010002c88f PyClassMethod_New + 1666
35 org.python.python	0x000000010000aff3 PyObject_Call + 112
36 org.python.python	0x000000010001a9df PyClass_New + 1575
37 org.python.python	0x000000010000aff3 PyObject_Call + 112
38 org.python.python	0x000000010008a54e PyEval_EvalFrameEx + 20380
39 org.python.python	0x000000010008acce PyEval_EvalCodeEx + 1803
40 org.python.python	0x000000010002c88f PyClassMethod_New + 1666
41 org.python.python	0x000000010000aff3 PyObject_Call + 112
42 org.python.python	0x000000010001a9df PyClass_New + 1575
43 org.python.python	0x000000010000aff3 PyObject_Call + 112
44 org.python.python	0x0000000100051b80 _PyType_Lookup + 5185
45 org.python.python	0x0000000100053b7c PyType_GenericAlloc + 3332
46 org.python.python	0x000000010000aff3 PyObject_Call + 112
47 org.python.python	0x000000010008a54e PyEval_EvalFrameEx + 20380
48 org.python.python	0x00000001000892e1 PyEval_EvalFrameEx + 15663
49 org.python.python	0x000000010008acce PyEval_EvalCodeEx + 1803
50 org.python.python	0x000000010008ad61 PyEval_EvalCode + 54
51 org.python.python	0x00000001000a265a Py_CompileString + 78
52 org.python.python	0x00000001000a2723 PyRun_FileExFlags + 150
53 org.python.python	0x00000001000a423d PyRun_SimpleFileExFlags + 704
54 org.python.python	0x00000001000b0286 Py_Main + 2718
55 org.python.python.app	0x0000000100000e6c start + 52
}}}