diff options
| -rw-r--r-- | skype/skype.c | 11 | 
1 files changed, 6 insertions, 5 deletions
diff --git a/skype/skype.c b/skype/skype.c index b80a256c..739e001c 100644 --- a/skype/skype.c +++ b/skype/skype.c @@ -182,7 +182,7 @@ struct groupchat *skype_chat_by_name( struct im_connection *ic, char *name )  {  	struct groupchat *ret; -	for( ret = ic->conversations; ret; ret = ret->next ) +	for( ret = ic->groupchats; ret; ret = ret->next )  	{  		if(strcmp(name, ret->title ) == 0 )  			break; @@ -346,7 +346,7 @@ static gboolean skype_read_callback( gpointer data, gint fd, b_input_condition c  								else if(!strcmp(sd->type, "SETTOPIC"))  								{  									if(gc) -										imcb_chat_topic(gc, sd->handle, body); +										imcb_chat_topic(gc, sd->handle, body, 0);  								}  								else if(!strcmp(sd->type, "LEFT"))  								{ @@ -647,11 +647,12 @@ static void skype_set_away( struct im_connection *ic, char *state_txt, char *mes  static GList *skype_away_states( struct im_connection *ic )  { -	GList *l = NULL; +	static GList *l = NULL;  	int i; -	for( i = 0; skype_away_state_list[i].full_name; i ++ ) -		l = g_list_append( l, (void*) skype_away_state_list[i].full_name ); +	if( l == NULL ) +		for( i = 0; skype_away_state_list[i].full_name; i ++ ) +			l = g_list_append( l, (void*) skype_away_state_list[i].full_name );  	return l;  }  | 
