diff options
| author | Wilmer van der Gaast <wilmer@gaast.net> | 2010-03-06 14:50:52 +0000 | 
|---|---|---|
| committer | Wilmer van der Gaast <wilmer@gaast.net> | 2010-03-06 14:50:52 +0000 | 
| commit | 840bba81bc4ab7ce37aeeea5f32091684b19e5b8 (patch) | |
| tree | 0baee2717433122e7ccd4d49617825e8db2b9400 /protocols/jabber/jabber_util.c | |
| parent | d1ad6f0973bda799bdf21e36f20dc58f7bb1bf08 (diff) | |
The Jabber part of the change. Also made representation of not-away a bit
more consistent. Except for free-for-chat, which is nuts anyway.
Diffstat (limited to 'protocols/jabber/jabber_util.c')
| -rw-r--r-- | protocols/jabber/jabber_util.c | 9 | 
1 files changed, 7 insertions, 2 deletions
| diff --git a/protocols/jabber/jabber_util.c b/protocols/jabber/jabber_util.c index 19a73b6a..185d3878 100644 --- a/protocols/jabber/jabber_util.c +++ b/protocols/jabber/jabber_util.c @@ -227,10 +227,9 @@ xt_status jabber_cache_handle_packet( struct im_connection *ic, struct xt_node *  const struct jabber_away_state jabber_away_state_list[] =  {  	{ "away",  "Away" }, -	{ "chat",  "Free for Chat" }, +	{ "chat",  "Free for Chat" },   /* WTF actually uses this? */  	{ "dnd",   "Do not Disturb" },  	{ "xa",    "Extended Away" }, -	{ "",      "Online" },  	{ "",      NULL }  }; @@ -238,6 +237,9 @@ const struct jabber_away_state *jabber_away_state_by_code( char *code )  {  	int i; +	if( code == NULL ) +		return NULL; +	  	for( i = 0; jabber_away_state_list[i].full_name; i ++ )  		if( g_strcasecmp( jabber_away_state_list[i].code, code ) == 0 )  			return jabber_away_state_list + i; @@ -249,6 +251,9 @@ const struct jabber_away_state *jabber_away_state_by_name( char *name )  {  	int i; +	if( name == NULL ) +		return NULL; +	  	for( i = 0; jabber_away_state_list[i].full_name; i ++ )  		if( g_strcasecmp( jabber_away_state_list[i].full_name, name ) == 0 )  			return jabber_away_state_list + i; | 
