diff options
Diffstat (limited to 'protocols/jabber/jabber.c')
| -rw-r--r-- | protocols/jabber/jabber.c | 7 | 
1 files changed, 6 insertions, 1 deletions
| diff --git a/protocols/jabber/jabber.c b/protocols/jabber/jabber.c index 2841c0db..5cc00c9f 100644 --- a/protocols/jabber/jabber.c +++ b/protocols/jabber/jabber.c @@ -79,6 +79,8 @@ static void jabber_init( account_t *acc )  	s = set_add( &acc->set, "tls", "try", set_eval_tls, acc );  	s->flags |= ACC_SET_OFFLINE_ONLY; +	s = set_add( &acc->set, "user_agent", "BitlBee", NULL, acc ); +	  	s = set_add( &acc->set, "xmlconsole", "false", set_eval_bool, acc );  	s->flags |= ACC_SET_OFFLINE_ONLY; @@ -285,6 +287,8 @@ static void jabber_logout( struct im_connection *ic )  	if( jd->node_cache )  		g_hash_table_destroy( jd->node_cache ); +	jabber_buddy_remove_all( ic ); +	  	xt_free( jd->xt );  	g_free( jd->away_message ); @@ -469,7 +473,8 @@ static void jabber_chat_invite_( struct groupchat *c, char *who, char *msg )  static void jabber_keepalive( struct im_connection *ic )  {  	/* Just any whitespace character is enough as a keepalive for XMPP sessions. */ -	jabber_write( ic, "\n", 1 ); +	if( !jabber_write( ic, "\n", 1 ) ) +		return;  	/* This runs the garbage collection every minute, which means every packet  	   is in the cache for about a minute (which should be enough AFAIK). */ | 
