On Thu, Aug 15, 2013 at 01:25:27PM +0200, Pascal Stumpf wrote:
> climm works fine for me so far with Pidgin on the other side.  The only
> regression I've noticed is that the message prompt does not change
> anymore from ">>>/<<<" for plaintext to "&>>/<<&" for OTR.  This should
> be handled by OTRMsg{In,Out} setting msg->otrencrypted, but apparently
> that doesn't happen.  Maybe ctx->msgstate is not properly set (though
> that would be bad, so I hope not).  Anyway, it's probably just cosmetic.

Thanks, I'll take a look.

I've found a crash in pidgin-otr. If I try to re-authenticate a buddy,
clicking around in the "Authenticate Buddy" for a while can cause
a crash. Sometimes it is instant, sometimes it takes a few tries
to reproduce. The backtrace varies, but always ends up somewhere
in gtk/glib. I've seen this one a few times:

Program received signal SIGSEGV, Segmentation fault.
0x000019e9c6a318c0 in handler_lists_cmp () from 
/usr/local/lib/libgobject-2.0.so.3600.1
(gdb) bt
#0  0x000019e9c6a318c0 in handler_lists_cmp () from 
/usr/local/lib/libgobject-2.0.so.3600.1
#1  0x000019e9c6a3a0fc in g_signal_emit_valist () from 
/usr/local/lib/libgobject-2.0.so.3600.1
#2  0x000019e9c6a3b5f3 in g_signal_emit () from 
/usr/local/lib/libgobject-2.0.so.3600.1
#3  0x000019e9d3de2bfb in gtk_widget_event_internal () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#4  0x000019e9d3c4cec5 in gtk_container_propagate_expose () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#5  0x000019e9d3c1d21b in gtk_box_forall () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#6  0x000019e9d3c4d98e in gtk_container_expose () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#7  0x000019e9d3cd075f in _gtk_marshal_BOOLEAN__BOXED () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#8  0x000019e9c6a23bd0 in g_closure_invoke () from 
/usr/local/lib/libgobject-2.0.so.3600.1
#9  0x000019e9c6a38d1a in signal_emit_unlocked_R () from 
/usr/local/lib/libgobject-2.0.so.3600.1
#10 0x000019e9c6a3a9d4 in g_signal_emit_valist () from 
/usr/local/lib/libgobject-2.0.so.3600.1
#11 0x000019e9c6a3b5f3 in g_signal_emit () from 
/usr/local/lib/libgobject-2.0.so.3600.1
#12 0x000019e9d3de2daf in gtk_widget_event_internal () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#13 0x000019e9d3c4cec5 in gtk_container_propagate_expose () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#14 0x000019e9d3c1d21b in gtk_box_forall () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#15 0x000019e9d3c4d98e in gtk_container_expose () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#16 0x000019e9d3cd075f in _gtk_marshal_BOOLEAN__BOXED () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#17 0x000019e9c6a23bd0 in g_closure_invoke () from 
/usr/local/lib/libgobject-2.0.so.3600.1
#18 0x000019e9c6a38d1a in signal_emit_unlocked_R () from 
/usr/local/lib/libgobject-2.0.so.3600.1
#19 0x000019e9c6a3a9d4 in g_signal_emit_valist () from 
/usr/local/lib/libgobject-2.0.so.3600.1
#20 0x000019e9c6a3b5f3 in g_signal_emit () from 
/usr/local/lib/libgobject-2.0.so.3600.1
#21 0x000019e9d3de2daf in gtk_widget_event_internal () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#22 0x000019e9d3c4cec5 in gtk_container_propagate_expose () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#23 0x000019e9d3c4d98e in gtk_container_expose () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#24 0x000019e9d3cd075f in _gtk_marshal_BOOLEAN__BOXED () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#25 0x000019e9c6a23b33 in g_closure_invoke () from 
/usr/local/lib/libgobject-2.0.so.3600.1
#26 0x000019e9c6a38d1a in signal_emit_unlocked_R () from 
/usr/local/lib/libgobject-2.0.so.3600.1
#27 0x000019e9c6a3a9d4 in g_signal_emit_valist () from 
/usr/local/lib/libgobject-2.0.so.3600.1
#28 0x000019e9c6a3b5f3 in g_signal_emit () from 
/usr/local/lib/libgobject-2.0.so.3600.1
#29 0x000019e9d3de2daf in gtk_widget_event_internal () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#30 0x000019e9d3cca68f in gtk_main_do_event () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#31 0x000019e9d21aae19 in _gdk_window_process_updates_recurse () from 
/usr/local/lib/libgdk-x11-2.0.so.2400.0
#32 0x000019e9d21a6ef8 in gdk_window_process_updates_internal () from 
/usr/local/lib/libgdk-x11-2.0.so.2400.0
#33 0x000019e9d21a8fae in gdk_window_process_all_updates () from 
/usr/local/lib/libgdk-x11-2.0.so.2400.0
#34 0x000019e9d3c4dae1 in gtk_container_idle_sizer () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#35 0x000019e9d218580e in gdk_threads_dispatch () from 
/usr/local/lib/libgdk-x11-2.0.so.2400.0
#36 0x000019e9d326589a in g_main_context_dispatch () from 
/usr/local/lib/libglib-2.0.so.3600.1
#37 0x000019e9d3267648 in g_main_context_iterate () from 
/usr/local/lib/libglib-2.0.so.3600.1
#38 0x000019e9d326876b in g_main_loop_run () from 
/usr/local/lib/libglib-2.0.so.3600.1
#39 0x000019e9d3cca883 in gtk_main () from 
/usr/local/lib/libgtk-x11-2.0.so.2400.0
#40 0x000019e7c3c8da35 in main () from /usr/local/bin/pidgin

I suspect that's an upstream bug they haven't fixed yet, the git logs
show nothing relevant. Perhaps it doesn't trigger on other platforms...

Anyway, it's not a major issue.
Once buddies are authenticated it seems to work fine.
I don't really feel like recompiling gtk and glib with debug symbols right now.

> Some minor stuff:
> * libotr forces -fpie/-pie.  This will not work on arm and socppc, so we
> should probably add --disable-gcc-hardening and
> --disable-linker-hardening to CONFIGURE_ARGS.
> * climm and bitlbee don't work with libotrv3 any more after these
> patches, so they should have their LIB_DEPENDS tightened to
> libotr>=4.0.0.

Yep, sure.

I'll send an updated diff later.

Reply via email to