Changeset a21a8ac for protocols/jabber/jabber_util.c
- Timestamp:
- 2006-10-10T12:05:42Z (18 years ago)
- Branches:
- master
- Children:
- 8eb10c9
- Parents:
- 6a1128d
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
protocols/jabber/jabber_util.c
r6a1128d ra21a8ac 247 247 248 248 *s = '/'; 249 new->resource = g_strdup( s + 1 ); 249 new->full_jid = g_strdup( full_jid ); 250 new->resource = strchr( new->full_jid, '/' ) + 1; 250 251 251 252 return new; … … 268 269 else 269 270 { 270 /* TODO: Add selection. */ 271 return g_hash_table_lookup( jd->buddies, jid ); 271 struct jabber_buddy *best_prio, *best_time; 272 char *set; 273 274 best_prio = best_time = bud = g_hash_table_lookup( jd->buddies, jid ); 275 for( ; bud; bud = bud->next ) 276 { 277 if( bud->priority > best_prio->priority ) 278 best_prio = bud; 279 if( bud->last_act > best_time->last_act ) 280 best_time = bud; 281 } 282 283 if( ( set = set_getstr( &gc->acc->set, "resource_select" ) ) == NULL ) 284 return NULL; 285 else if( strcmp( set, "activity" ) == 0 ) 286 return best_time; 287 else /* if( strcmp( set, "priority" ) == 0 ) */ 288 return best_prio; 272 289 } 273 290 … … 295 312 g_hash_table_remove( jd->buddies, bud->handle ); 296 313 g_free( bud->handle ); 297 g_free( bud-> resource);314 g_free( bud->full_jid ); 298 315 g_free( bud->away_message ); 299 316 g_free( bud ); … … 314 331 g_hash_table_replace( jd->buddies, bi->handle, bi->next ); 315 332 316 g_free( bi-> resource);333 g_free( bi->full_jid ); 317 334 g_free( bi->away_message ); 318 335 g_free( bi );
Note: See TracChangeset
for help on using the changeset viewer.