comparison libpurple/server.c @ 25889:e2b193decaa5

explicit merge of '814d53152c168c9c4732b3d084260711d536fba6' and 'af375020001eed33302b471e7ee9dec6a478e824'
author Richard Laager <rlaager@wiktel.com>
date Fri, 02 Jan 2009 22:23:58 +0000
parents 94fa7211eb98
children 43b721aa4b76
comparison
equal deleted inserted replaced
24844:94a47062819c 25889:e2b193decaa5
228 228
229 if(prpl) 229 if(prpl)
230 prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl); 230 prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl);
231 231
232 if(b && prpl_info && prpl_info->alias_buddy) { 232 if(b && prpl_info && prpl_info->alias_buddy) {
233 prpl_info->alias_buddy(gc, b->name, b->alias); 233 prpl_info->alias_buddy(gc, purple_buddy_get_name(b), purple_buddy_get_local_buddy_alias(b));
234 } 234 }
235 } 235 }
236 236
237 void 237 void
238 serv_got_alias(PurpleConnection *gc, const char *who, const char *alias) 238 serv_got_alias(PurpleConnection *gc, const char *who, const char *alias)
245 account = purple_connection_get_account(gc); 245 account = purple_connection_get_account(gc);
246 buddies = purple_find_buddies(account, who); 246 buddies = purple_find_buddies(account, who);
247 247
248 while (buddies != NULL) 248 while (buddies != NULL)
249 { 249 {
250 const char *server_alias;
251
250 b = buddies->data; 252 b = buddies->data;
251 buddies = g_slist_delete_link(buddies, buddies); 253 buddies = g_slist_delete_link(buddies, buddies);
252 254
253 if((b->server_alias == NULL && alias == NULL) || 255 server_alias = purple_buddy_get_server_alias(b);
254 (b->server_alias && alias && !strcmp(b->server_alias, alias))) 256 if((server_alias == NULL && alias == NULL) ||
257 (server_alias && alias && !strcmp(server_alias, alias)))
255 { 258 {
256 continue; 259 continue;
257 } 260 }
258 261
259 purple_blist_server_alias_buddy(b, alias); 262 purple_blist_server_alias_buddy(b, alias);
260 263
261 conv = purple_find_conversation_with_account(PURPLE_CONV_TYPE_IM, b->name, account); 264 conv = purple_find_conversation_with_account(PURPLE_CONV_TYPE_IM, purple_buddy_get_name(b), account);
262 if(conv != NULL && alias != NULL && 265 if(conv != NULL && alias != NULL &&
263 who != NULL && strcmp(alias, who)) 266 who != NULL && strcmp(alias, who))
264 { 267 {
265 char *escaped = g_markup_escape_text(who, -1); 268 char *escaped = g_markup_escape_text(who, -1);
266 char *escaped2 = g_markup_escape_text(alias, -1); 269 char *escaped2 = g_markup_escape_text(alias, -1);
287 290
288 account = purple_connection_get_account(gc); 291 account = purple_connection_get_account(gc);
289 buddies = purple_find_buddies(account, who); 292 buddies = purple_find_buddies(account, who);
290 293
291 while(buddies != NULL) { 294 while(buddies != NULL) {
295 const char *balias;
292 b = buddies->data; 296 b = buddies->data;
293 297
294 buddies = g_slist_delete_link(buddies, buddies); 298 buddies = g_slist_delete_link(buddies, buddies);
295 299
296 if((!b->alias && !alias) || (b->alias && alias && !strcmp(b->alias, alias))) 300 balias = purple_buddy_get_local_buddy_alias(b);
301 if((!balias && !alias) || (balias && alias && !strcmp(balias, alias)))
297 continue; 302 continue;
298 303
299 purple_blist_alias_buddy(b, alias); 304 purple_blist_alias_buddy(b, alias);
300 } 305 }
301 } 306 }
365 if(prpl) 370 if(prpl)
366 prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl); 371 prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl);
367 372
368 if(gc && og && ng) { 373 if(gc && og && ng) {
369 if (prpl_info && prpl_info->group_buddy) { 374 if (prpl_info && prpl_info->group_buddy) {
370 prpl_info->group_buddy(gc, b->name, og->name, ng->name); 375 prpl_info->group_buddy(gc, purple_buddy_get_name(b),
376 purple_group_get_name(og),
377 purple_group_get_name(ng));
371 } 378 }
372 } 379 }
373 } 380 }
374 381
375 void serv_add_permit(PurpleConnection *gc, const char *name) 382 void serv_add_permit(PurpleConnection *gc, const char *name)