Mercurial > pidgin.yaz
comparison libpurple/blist.c @ 32301:609e3855f36d
propagate from branch 'im.pidgin.pidgin' (head 4fb1347ba91ca1ac8b6f5ad029c1ed0f1b6e60a2)
to branch 'im.pidgin.pidgin.next.major' (head 675a312342374865dae98f559ff532b62c47a350)
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Mon, 18 Apr 2011 06:32:04 +0000 |
parents | 4076f53cdd84 507e7721c5e4 |
children | cd1d9e04c587 |
comparison
equal
deleted
inserted
replaced
31923:29f4dbdb1d0f | 32301:609e3855f36d |
---|---|
459 parse_buddy(PurpleGroup *group, PurpleContact *contact, xmlnode *bnode) | 459 parse_buddy(PurpleGroup *group, PurpleContact *contact, xmlnode *bnode) |
460 { | 460 { |
461 PurpleAccount *account; | 461 PurpleAccount *account; |
462 PurpleBuddy *buddy; | 462 PurpleBuddy *buddy; |
463 char *name = NULL, *alias = NULL; | 463 char *name = NULL, *alias = NULL; |
464 const char *acct_name, *proto, *protocol; | 464 const char *acct_name, *proto; |
465 xmlnode *x; | 465 xmlnode *x; |
466 | 466 |
467 acct_name = xmlnode_get_attrib(bnode, "account"); | 467 acct_name = xmlnode_get_attrib(bnode, "account"); |
468 protocol = xmlnode_get_attrib(bnode, "protocol"); | |
469 protocol = _purple_oscar_convert(acct_name, protocol); /* XXX: Remove */ | |
470 proto = xmlnode_get_attrib(bnode, "proto"); | 468 proto = xmlnode_get_attrib(bnode, "proto"); |
471 proto = _purple_oscar_convert(acct_name, proto); /* XXX: Remove */ | 469 |
472 | 470 if (!acct_name || !proto) |
473 if (!acct_name || (!proto && !protocol)) | |
474 return; | 471 return; |
475 | 472 |
476 account = purple_accounts_find(acct_name, proto ? proto : protocol); | 473 account = purple_accounts_find(acct_name, proto); |
477 | 474 |
478 if (!account) | 475 if (!account) |
479 return; | 476 return; |
480 | 477 |
481 if ((x = xmlnode_get_child(bnode, "name"))) | 478 if ((x = xmlnode_get_child(bnode, "name"))) |
530 static void | 527 static void |
531 parse_chat(PurpleGroup *group, xmlnode *cnode) | 528 parse_chat(PurpleGroup *group, xmlnode *cnode) |
532 { | 529 { |
533 PurpleChat *chat; | 530 PurpleChat *chat; |
534 PurpleAccount *account; | 531 PurpleAccount *account; |
535 const char *acct_name, *proto, *protocol; | 532 const char *acct_name, *proto; |
536 xmlnode *x; | 533 xmlnode *x; |
537 char *alias = NULL; | 534 char *alias = NULL; |
538 GHashTable *components; | 535 GHashTable *components; |
539 | 536 |
540 acct_name = xmlnode_get_attrib(cnode, "account"); | 537 acct_name = xmlnode_get_attrib(cnode, "account"); |
541 protocol = xmlnode_get_attrib(cnode, "protocol"); | |
542 proto = xmlnode_get_attrib(cnode, "proto"); | 538 proto = xmlnode_get_attrib(cnode, "proto"); |
543 | 539 |
544 if (!acct_name || (!proto && !protocol)) | 540 if (!acct_name || !proto) |
545 return; | 541 return; |
546 | 542 |
547 account = purple_accounts_find(acct_name, proto ? proto : protocol); | 543 account = purple_accounts_find(acct_name, proto); |
548 | 544 |
549 if (!account) | 545 if (!account) |
550 return; | 546 return; |
551 | 547 |
552 if ((x = xmlnode_get_child(cnode, "alias"))) | 548 if ((x = xmlnode_get_child(cnode, "alias"))) |
628 xmlnode *anode; | 624 xmlnode *anode; |
629 for (anode = privacy->child; anode; anode = anode->next) { | 625 for (anode = privacy->child; anode; anode = anode->next) { |
630 xmlnode *x; | 626 xmlnode *x; |
631 PurpleAccount *account; | 627 PurpleAccount *account; |
632 int imode; | 628 int imode; |
633 const char *acct_name, *proto, *mode, *protocol; | 629 const char *acct_name, *proto, *mode; |
634 | 630 |
635 acct_name = xmlnode_get_attrib(anode, "name"); | 631 acct_name = xmlnode_get_attrib(anode, "name"); |
636 protocol = xmlnode_get_attrib(anode, "protocol"); | |
637 proto = xmlnode_get_attrib(anode, "proto"); | 632 proto = xmlnode_get_attrib(anode, "proto"); |
638 mode = xmlnode_get_attrib(anode, "mode"); | 633 mode = xmlnode_get_attrib(anode, "mode"); |
639 | 634 |
640 if (!acct_name || (!proto && !protocol) || !mode) | 635 if (!acct_name || !proto || !mode) |
641 continue; | 636 continue; |
642 | 637 |
643 account = purple_accounts_find(acct_name, proto ? proto : protocol); | 638 account = purple_accounts_find(acct_name, proto); |
644 | 639 |
645 if (!account) | 640 if (!account) |
646 continue; | 641 continue; |
647 | 642 |
648 imode = atoi(mode); | 643 imode = atoi(mode); |