On Sat, Jun 29, 2013 at 08:43:37PM -0400, Antoine Beaupré wrote:
> From what I can tell, it looks like loudmouth is throwing an exception
> and the plugin is not handling it so crashes.
> 
> This is the code where this happens, I believe:
> 
> static void
> server_cleanup(XMPP_SERVER_REC *server)
> {
>       if (!IS_XMPP_SERVER(server))
>               return;
>       if (server->timeout_tag)
>               g_source_remove(server->timeout_tag);
>       if (lm_connection_get_state(server->lmconn) !=
>           LM_CONNECTION_STATE_CLOSED)
>               lm_connection_close(server->lmconn, NULL);
>       lm_connection_unref(server->lmconn);
>       g_free(server->jid);
>       g_free(server->user);
>       g_free(server->domain);
>       g_free(server->resource);
>       g_free(server->ping_id);
> }
> 
> Some try/catch around this may resolve the issue, but keep in mind
> that this function is called from a signal emitted elsewhere
> (server_disconnect()) so maybe that's where it should be handled
> instead.

Something like this landed upstream as part of
https://github.com/cdidier/irssi-xmpp/commit/5cc5fea5970fe19e1a3a2a1b6cb4b7436cc813fd
If that's where the problem was, it should be fixed as of
irssi-plugin-xmpp 0.54+git20191101+c13fa5-1

Florian

Reply via email to