Changeset 208db4b for protocols/msn/msn.c
- Timestamp:
- 2012-09-29T19:38:18Z (12 years ago)
- Branches:
- master
- Children:
- 4c9d377
- Parents:
- 3901b5d
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
protocols/msn/msn.c
r3901b5d r208db4b 140 140 static int msn_buddy_msg( struct im_connection *ic, char *who, char *message, int away ) 141 141 { 142 struct bee_user *bu = bee_user_by_handle( ic->bee, ic, who ); 143 struct msn_buddy_data *bd = bu ? bu->data : NULL; 142 144 struct msn_switchboard *sb; 143 145 … … 149 151 else 150 152 #endif 151 if( ( sb = msn_sb_by_handle( ic, who ) ) ) 153 if( bd && bd->flags & MSN_BUDDY_FED ) 154 { 155 msn_ns_sendmessage( ic, bu, message ); 156 } 157 else if( ( sb = msn_sb_by_handle( ic, who ) ) ) 152 158 { 153 159 return( msn_sb_sendmessage( sb, message ) ); … … 355 361 { 356 362 struct msn_data *md = bu->ic->proto_data; 357 bu->data = g_new0( struct msn_buddy_data, 1 ); 363 struct msn_buddy_data *bd; 364 char *handle; 365 366 bd = bu->data = g_new0( struct msn_buddy_data, 1 ); 358 367 g_tree_insert( md->domaintree, bu->handle, bu ); 368 369 for( handle = bu->handle; isdigit( *handle ); handle ++ ); 370 if( *handle == ':' ) 371 { 372 /* Pass a nick hint so hopefully the stupid numeric prefix 373 won't show up to the user. */ 374 char *s = strchr( ++handle, '@' ); 375 if( s ) 376 { 377 handle = g_strndup( handle, s - handle ); 378 imcb_buddy_nick_hint( bu->ic, bu->handle, handle ); 379 g_free( handle ); 380 } 381 382 bd->flags |= MSN_BUDDY_FED; 383 } 359 384 } 360 385
Note: See TracChangeset
for help on using the changeset viewer.