Hi all,
So I tried what was advised to me.
python -c 'import pylab; pylab.plot([4]);'
terminate called after throwing an instance of 'std::exception'
terminate called recursively
Abort

which happens here:
     14 agg::trans_affine
     15 py_to_agg_transformation_matrix(PyObject* obj, bool errors = true)
     16 {
     17     PyArrayObject* matrix = NULL;
     18
     19     try
     20     {
     21         if (obj == Py_None)
     22             throw std::exception();

Since I compiled w/o optimization flags I have this now:
#11 0xfffffd7ff46cf0b6 in __cxxabiv1::__cxa_throw (obj=<value
optimized out>, tinfo=<value optimized out>,
    dest=<value optimized out>) at
../../../../../libstdc++-v3/libsupc++/eh_throw.cc:83
#12 0xfffffd7ff4a3c708 in py_to_agg_transformation_matrix
(obj=0x774380, errors=false) at src/agg_py_transforms.cpp:22
#13 0xfffffd7ff4a4132e in _path_module::update_path_extents
(this=0x144e230, args=...) at src/path.cpp:380
#14 0xfffffd7ff4a537ce in
Py::ExtensionModule<_path_module>::invoke_method_varargs
(this=0x144e230, method_def=0x14009b0,
    args=...) at ./CXX/Python2/ExtensionModule.hxx:184
#15 0xfffffd7ff4a389df in Py::method_varargs_call_handler
(_self_and_name_tuple=0x1244170, _args=0x1977fb0)
    at CXX/Python2/cxx_extensions.cxx:1714
#16 0x00000000004a6071 in call_function (f=0x201e980, throwflag=<value
optimized out>)
    at /usr/local/src/lang/Python-2.7.1/Python/ceval.c:4012
#17 PyEval_EvalFrameEx (f=0x201e980, throwflag=<value optimized out>)
    at /usr/local/src/lang/Python-2.7.1/Python/ceval.c:2665
#18 0x00000000004a79c1 in PyEval_EvalCodeEx (co=0x123a130,
globals=<value optimized out>, locals=<value optimized out>,
    args=0x201eb20, argcount=<value optimized out>, kws=0x3,
kwcount=2, defs=0x12467e8, defcount=3, closure=0x0)
    at /usr/local/src/lang/Python-2.7.1/Python/ceval.c:3252

The function has now obj=0x774380 as an argument instead of <value
optimized out>

So what is generating a PyNull object is in src/path.cpp:380
but this file doesn't exist! If I look in _path.cpp though this is
where it fails:
    360         ::get_path_extents(path, trans, &extents_data[0],
&extents_data[1],
    361                            &extents_data[2], &extents_data[3],
&xm, &ym);

I have no idea how to debug this since it seems the problem are in the
CXX extensions (calls to ceval.c)

Any idea how I can narrow down the problem?

Thanks!


On Sun, Mar 13, 2011 at 6:18 PM, Nicolas SCHEFFER
<scheffer.nico...@gmail.com> wrote:
> Thanks much for the reply!
> I'll try your advice as soon as I can.
>
> BTW, I don't think this is a Solaris-related problem.
> If you look at the pointers in my original post, the same error can
> happen on other arch (I confess it can be for other reasons though).
>
> -n
>
> On Sun, Mar 13, 2011 at 1:03 PM, Jouni K. Seppänen <j...@iki.fi> wrote:
>> Nicolas SCHEFFER <scheffer.nico...@gmail.com> writes:
>>
>>> I didn't get much reply on this issue, so I'm just trying to resurrect
>>> the question.
>>
>> Probably not many devs using Solaris, so no-one has been able to
>> reproduce this.
>>
>>>> #12 0xfffffd7ff4a22fd8 in py_to_agg_transformation_matrix
>>>> (obj=0x774380, errors=<value optimized out>) at
>>>> src/agg_py_transforms.cpp:22
>>>> #13 0xfffffd7ff4a32e7c in _path_module::update_path_extents
>>>> (this=<value optimized out>, args=...) at src/path.cpp:380
>>
>> So it's in transforms-related code, but we can't see the locals. First
>> I'd try to recompile without optimizations and (hoping it still crashes)
>> inspect the local variables in these frames in gdb. Or maybe make the
>> functions print out their arguments and any other relevant locals.
>>
>> --
>> Jouni K. Seppänen
>> http://www.iki.fi/jks
>>
>>
>> ------------------------------------------------------------------------------
>> Colocation vs. Managed Hosting
>> A question and answer guide to determining the best fit
>> for your organization - today and in the future.
>> http://p.sf.net/sfu/internap-sfd2d
>> _______________________________________________
>> Matplotlib-users mailing list
>> Matplotlib-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/matplotlib-users
>>
>

------------------------------------------------------------------------------
Colocation vs. Managed Hosting
A question and answer guide to determining the best fit
for your organization - today and in the future.
http://p.sf.net/sfu/internap-sfd2d
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to