aboutsummaryrefslogtreecommitdiffstats
path: root/bitlbee.c
diff options
context:
space:
mode:
Diffstat (limited to 'bitlbee.c')
-rw-r--r--bitlbee.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/bitlbee.c b/bitlbee.c
index 218caf01..9a4688d8 100644
--- a/bitlbee.c
+++ b/bitlbee.c
@@ -166,10 +166,12 @@ gboolean bitlbee_io_current_client_read( GIOChannel *source, GIOCondition condit
strcpy( ( irc->readbuffer + strlen( irc->readbuffer ) ), line );
}
- if( !irc_process( irc ) )
+ irc_process( irc );
+
+ /* Normally, irc_process() shouldn't call irc_free() but irc_abort(). Just in case: */
+ if( !g_slist_find( irc_connection_list, irc ) )
{
- log_message( LOGLVL_INFO, "Destroying connection with fd %d.", irc->fd );
- irc_abort( irc );
+ log_message( LOGLVL_WARNING, "Abnormal termination of connection with fd %d.", irc->fd );
return FALSE;
}