In Gramps we have a class derived from GtkTextBuffer which crashes during init 
because the default callback for
mark-set signal doesn't exist. We don't reset the handler, and the crash occurs 
before the only instance of connecting
to the signal. It crashes only when compiled with llvm-gcc-4.2 provided in 
Xcode 4.4 or later; when compiled with gcc-4.2  from Xcode 3 or with 
llvm-gcc-4.2 from Xcode 4.2, it works fine. Disabling optimization doesn't make 
a difference.

The top of the stack trace follows on the off chance it might be useful.

Anyone have any ideas for further investigation or for a workaround?

Regards,
John Ralls

#0  0x02bb9fe9 in g_type_class_meta_marshal (closure=0x76745b0, 
return_value=0x0, n_param_values=3, param_values=0xbfff86e0, 
invocation_hint=0xbfff8660, marshal_data=0x7677570) at gclosure.c:968
#1  0x02bba02e in g_type_class_meta_marshal (closure=0x76745b0, 
return_value=0x0, n_param_values=3, param_values=0xbfff86e0, 
invocation_hint=0xbfff8660, marshal_data=0x7677570) at gclosure.c:970
#2  0x02bba02e in g_type_class_meta_marshal (closure=0x76745b0, 
return_value=0x0, n_param_values=3, param_values=0xbfff86e0, 
invocation_hint=0xbfff8660, marshal_data=0x5c) at gclosure.c:970
#3  0x02bb981d in g_closure_invoke (closure=0x76745b0, return_value=0x0, 
n_param_values=3, param_values=0xbfff86e0, invocation_hint=0xbfff8660) at 
gclosure.c:777
#4  0x02bda698 in signal_emit_unlocked_R (node=0x76746b0, detail=0, 
instance=0xf2d350, emission_return=0x0, instance_and_params=0xbfff86e0) at 
gsignal.c:3589
#5  0x02bd96bf in g_signal_emit_valist (instance=0xf2d350, signal_id=185, 
detail=0, var_args=0xbfff8a04 "­Eg\apñÙ") at gsignal.c:3300
#6  0x02bd9d71 in g_signal_emit (instance=0xf2d350, signal_id=185, detail=0) at 
gsignal.c:3356
#7  0x03e1d3e9 in gtk_text_buffer_mark_set (buffer=0xf2d350, 
location=0xbfff8a60, mark=0xeba470) at gtktextbuffer.c:2043
#8  0x03e1d4ef in gtk_text_buffer_set_mark (buffer=0xf2d350, existing_mark=0x0, 
mark_name=0x826fd90 "insert-start", iter=0x8270920, left_gravity=1, 
should_exist=0) at gtktextbuffer.c:2091
#9  0x03e1d5fa in gtk_text_buffer_create_mark (buffer=0xf2d350, 
mark_name=0x826fd90 "insert-start", where=0x8270920, left_gravity=1) at 
gtktextbuffer.c:2131
#10 0x028f69dd in .LCFI1 () at darwin.S:64
#11 0x028f6999 in ffi_call (cif=0xbfff8c20, fn=0x3e1d510 
<gtk_text_buffer_create_mark>, rvalue=0xbfff8c10, avalue=0xbfff8bb0) at 
ffi.c:413
#12 0x02b814a5 in g_callable_info_invoke ()
#13 0x02b82843 in g_function_info_invoke ()
#14 0x02b554e6 in _invoke_callable (state=0xbfff8d40, cache=0xf36c00, 
callable_info=0x3429a30, function_ptr=0) at pygi-invoke.c:64
#15 0x02b54b58 in pygi_callable_info_invoke (info=0x3429a30, py_args=0x9a080f0, 
kwargs=0x99ff270, cache=0xf36c00, function_ptr=0, user_data=0x0) at 
pygi-invoke.c:656
#16 0x02b55aca in _wrap_g_callable_info_invoke (self=0x46c5cb0, 
py_args=0x9a080f0, kwargs=0x99ff270) at pygi-invoke.c:679
#17 0x0004d52c in PyCFunction_Call (func=0x9931350, arg=0xbfff8e18, 
kw=0x99ff270) at methodobject.c:81
#18 0x000a62ce in ext_do_call [inlined] () at 
/Users/john/Development/gtk-sources/Python-2.7.3/Python/ceval.c:4331
#19 0x000a62ce in PyEval_EvalFrameEx (f=0x82576b0, throwflag=0) at ceval.c:2705
#20 0x000a871d in PyEval_EvalCodeEx (co=0x3960608, globals=0x2b38270, 
locals=0x0, args=0x99268dc, argcount=4, kws=0x0, kwcount=0, defs=0x0, 
defcount=0, closure=0x46c4eb0) at ceval.c:3253
#21 0x0003835b in function_call (func=0x46c93b0, arg=0x99268d0, kw=0x0) at 
funcobject.c:526
#22 0x0000f0b1 in PyObject_Call (func=0x46c93b0, arg=0x99268d0, kw=0x0) at 
abstract.c:2529
#23 0x00020e4e in instancemethod_call (func=0xbfff9368, arg=0x99268d0, kw=0x0) 
at classobject.c:2578
(More stack frames follow...)
_______________________________________________
python-hackers-list mailing list
[email protected]
https://mail.gnome.org/mailman/listinfo/python-hackers-list

Reply via email to