diff options
| author | Jelmer Vernooij <jelmer@samba.org> | 2006-03-24 16:16:38 +0100 | 
|---|---|---|
| committer | Jelmer Vernooij <jelmer@samba.org> | 2006-03-24 16:16:38 +0100 | 
| commit | 728a981e422539df38d27d87e33829082d376ac6 (patch) | |
| tree | 86458693b4f0f38f3695ce7fe3bcc7b1ee67c818 /protocols/nogaim.c | |
| parent | 96ace1b808f4df3f2106fa90c19fdc23408f924d (diff) | |
| parent | 9b8a38bfa9a89e9741521ac522927c80b68976cf (diff) | |
[merge] Wilmer
Diffstat (limited to 'protocols/nogaim.c')
| -rw-r--r-- | protocols/nogaim.c | 42 | 
1 files changed, 14 insertions, 28 deletions
| diff --git a/protocols/nogaim.c b/protocols/nogaim.c index 29ae860a..28f76fff 100644 --- a/protocols/nogaim.c +++ b/protocols/nogaim.c @@ -13,7 +13,7 @@   * from scratch for BitlBee and doesn't contain any code from Gaim anymore   * (except for the function names).   * - * Copyright 2002-2004 Wilmer van der Gaast <lintux@lintux.cx> + * Copyright 2002-2006 Wilmer van der Gaast <wilmer@gaast.net> and others   */  /* @@ -38,7 +38,7 @@  #include <ctype.h>  #include <iconv.h> -static char *proto_away_alias[7][5] = +static char *proto_away_alias[8][5] =  {  	{ "Away from computer", "Away", "Extended away", NULL },  	{ "NA", "N/A", "Not available", NULL }, @@ -46,6 +46,7 @@ static char *proto_away_alias[7][5] =  	{ "Be right back", "BRB", NULL },  	{ "On the phone", "Phone", "On phone", NULL },  	{ "Out to lunch", "Lunch", "Food", NULL }, +	{ "Invisible", "Hidden" },  	{ NULL }  };  static char *proto_away_alias_find( GList *gcm, char *away ); @@ -304,7 +305,7 @@ void hide_login_progress_error( struct gaim_connection *gc, char *msg )  void serv_got_crap( struct gaim_connection *gc, char *format, ... )  {  	va_list params; -	char text[1024], buf[1024], acc_id[33]; +	char text[1024], buf[1024], *acc_id;  	char *msg;  	account_t *a; @@ -329,11 +330,13 @@ void serv_got_crap( struct gaim_connection *gc, char *format, ... )  	/* If we found one, add the screenname to the acc_id. */  	if( a ) -		g_snprintf( acc_id, 32, "%s(%s)", gc->prpl->name, gc->username ); +		acc_id = g_strdup_printf( "%s(%s)", gc->prpl->name, gc->username );  	else -		g_snprintf( acc_id, 32, "%s", gc->prpl->name ); +		acc_id = g_strdup( gc->prpl->name );  	irc_usermsg( gc->irc, "%s - %s", acc_id, msg ); +	 +	g_free( acc_id );  }  static gboolean send_keepalive( gpointer d ) @@ -351,7 +354,7 @@ void account_online( struct gaim_connection *gc )  	user_t *u;  	/* MSN servers sometimes redirect you to a different server and do -	   the whole login sequence again, so subsequent calls to this +	   the whole login sequence again, so these "late" calls to this  	   function should be handled correctly. (IOW, ignored) */  	if( gc->flags & OPT_LOGGED_IN )  		return; @@ -363,9 +366,11 @@ void account_online( struct gaim_connection *gc )  	gc->keepalive = g_timeout_add( 60000, send_keepalive, gc );  	gc->flags |= OPT_LOGGED_IN; -	if( u && u->away ) proto_away( gc, u->away ); +	/* Also necessary when we're not away, at least for some of the +	   protocols. */ +	proto_away( gc, u->away ); - 	if( !strcmp(gc->prpl->name, "icq") ) + 	if( strcmp( gc->prpl->name, "ICQ" ) == 0 )  	{  		for( u = gc->irc->users; u; u = u->next )  			if( u->gc == gc ) @@ -469,16 +474,6 @@ void do_ask_dialog( struct gaim_connection *gc, char *msg, void *data, void *doi  /* list.c */ -int bud_list_cache_exists( struct gaim_connection *gc ) -{ -	return( 0 ); -} - -void do_import( struct gaim_connection *gc, void *null ) -{ -	return; -} -  void add_buddy( struct gaim_connection *gc, char *group, char *handle, char *realname )  {  	user_t *u; @@ -530,6 +525,7 @@ void add_buddy( struct gaim_connection *gc, char *group, char *handle, char *rea  	u->gc = gc;  	u->handle = g_strdup( handle ); +	if( group ) u->group = g_strdup( group );  	u->send_handler = buddy_send_handler;  	u->last_typing_notice = 0;  } @@ -553,11 +549,6 @@ struct buddy *find_buddy( struct gaim_connection *gc, char *handle )  	return( b );  } -void do_export( struct gaim_connection *gc ) -{ -	return; -} -  void signoff_blocked( struct gaim_connection *gc )  {  	return; /* Make all blocked users look invisible (TODO?) */ @@ -883,11 +874,6 @@ struct conversation *serv_got_joined_chat( struct gaim_connection *gc, int id, c  	return( c );  } -void serv_finish_login( struct gaim_connection *gc ) -{ -	return; -} -  /* buddy_chat.c */ | 
