libpurple/server.c

branch
next.minor
changeset 24955
77727fac30c6
parent 24526
c302510b1137
child 24957
647853a842da
equal deleted inserted replaced
24954:27e63ec24946 24955:77727fac30c6
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_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 gchar *server_alias = purple_buddy_get_server_alias(b);
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 if((server_alias == NULL && alias == NULL) ||
254 (b->server_alias && alias && !strcmp(b->server_alias, alias))) 256 (server_alias && alias && !strcmp(server_alias, alias)))
255 { 257 {
256 continue; 258 continue;
257 } 259 }
258 260
259 purple_blist_server_alias_buddy(b, alias); 261 purple_blist_server_alias_buddy(b, alias);
260 262
261 conv = purple_find_conversation_with_account(PURPLE_CONV_TYPE_IM, b->name, account); 263 conv = purple_find_conversation_with_account(PURPLE_CONV_TYPE_IM, purple_buddy_get_name(b), account);
262 if(conv != NULL && alias != NULL && strcmp(alias, who)) 264 if(conv != NULL && alias != NULL && strcmp(alias, who))
263 { 265 {
264 char *escaped = g_markup_escape_text(who, -1); 266 char *escaped = g_markup_escape_text(who, -1);
265 char *escaped2 = g_markup_escape_text(alias, -1); 267 char *escaped2 = g_markup_escape_text(alias, -1);
266 char *tmp = g_strdup_printf(_("%s is now known as %s.\n"), 268 char *tmp = g_strdup_printf(_("%s is now known as %s.\n"),
286 288
287 account = purple_connection_get_account(gc); 289 account = purple_connection_get_account(gc);
288 buddies = purple_find_buddies(account, who); 290 buddies = purple_find_buddies(account, who);
289 291
290 while(buddies != NULL) { 292 while(buddies != NULL) {
293 const gchar *balias = purple_buddy_get_alias(b);
291 b = buddies->data; 294 b = buddies->data;
292 295
293 buddies = g_slist_delete_link(buddies, buddies); 296 buddies = g_slist_delete_link(buddies, buddies);
294 297
295 if((!b->alias && !alias) || (b->alias && alias && !strcmp(b->alias, alias))) 298 if((!balias && !alias) || (balias && alias && !strcmp(balias, alias)))
296 continue; 299 continue;
297 300
298 purple_blist_alias_buddy(b, alias); 301 purple_blist_alias_buddy(b, alias);
299 } 302 }
300 } 303 }
364 if(prpl) 367 if(prpl)
365 prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl); 368 prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(prpl);
366 369
367 if(gc && og && ng) { 370 if(gc && og && ng) {
368 if (prpl_info && prpl_info->group_buddy) { 371 if (prpl_info && prpl_info->group_buddy) {
369 prpl_info->group_buddy(gc, b->name, og->name, ng->name); 372 prpl_info->group_buddy(gc, purple_buddy_get_name(b),
373 purple_group_get_name(og),
374 purple_group_get_name(ng));
370 } 375 }
371 } 376 }
372 } 377 }
373 378
374 void serv_add_permit(PurpleConnection *gc, const char *name) 379 void serv_add_permit(PurpleConnection *gc, const char *name)

mercurial