[OTR-dev] pidgin-otr 4.0.0 beta crasher

Paul Wouters paul at cypherpunks.ca
Thu May 3 15:23:51 EDT 2012


Program received signal SIGSEGV, Segmentation fault.
otrg_plugin_conv_to_selected_instag (conv=0x0, default_val=1)
     at otr-plugin.c:901
901	    if (!g_hash_table_lookup_extended(conv->data,
"otr-ui_selected_ctx", NULL,
(gdb) bt
#0  otrg_plugin_conv_to_selected_instag (conv=0x0, default_val=1)
     at otr-plugin.c:901
#1  0x00007fffe4defa8d in otrg_plugin_conv_to_selected_context
(conv=0x0,
     force_create=0) at otr-plugin.c:916
#2  0x00007fffe4df9b0b in check_incoming_instance_change (
     account=<optimized out>, sender=<optimized out>, message=<optimized
out>,
     conv=0x0, flags=<optimized out>) at gtk-dialog.c:3256
#3  0x00007ffff4eee2aa in purple_signal_emit_vargs (instance=<optimized
out>,
     signal=0x7ffff4f48e18 "received-im-msg", args=0x7fffffffb6e0)
     at signals.c:482
#4  0x00007ffff4eee3fe in purple_signal_emit (instance=<optimized out>,
     signal=<optimized out>) at signals.c:434
#5  0x00007ffff4eec691 in serv_got_im (gc=0xd57b50, who=<optimized out>,
     msg=<optimized out>, flags=PURPLE_MESSAGE_RECV, mtime=1336072740)
     at server.c:608
#6  0x00007fffe2529c9a in irc_msg_handle_privmsg (irc=0xd52290,
     name=<optimized out>, from=<optimized out>, to=0xc76520 "LetoTo",
     rawmsg=<optimized out>, notice=1) at msgs.c:1274
#7  0x00007fffe252f940 in irc_parse_msg (irc=0xd52290, input=
     0xc8be20 ":NickServ!NickServ at services. NOTICE LetoTo :You are now
identified for \002letoto\002.") at parse.c:747
#8  0x00007fffe2527f5d in read_input (irc=0xd52290, len=<optimized out>)
     at irc.c:665

Looking at the code:

/* Given a PurpleConversation, return the selected instag */
otrl_instag_t otrg_plugin_conv_to_selected_instag(PurpleConversation *conv,
         otrl_instag_t default_val)
{
     otrl_instag_t selected_instance;

     if (!g_hash_table_lookup_extended(conv->data, "otr-ui_selected_ctx", NULL,
             (void**)&selected_instance)) {
         selected_instance = default_val;
     }

     return selected_instance;
}

Looks like it is not expecting that conv can be NULL, and
that conv->data always points to something.

This is happening when i startup pidgin and click on
the accounts to go online in the account manager window

Paul



More information about the OTR-dev mailing list