comparison mcabber/src/jab_iq.c @ 605:2a4fefb98511

Set the subscription pending flag
author Mikael Berthe <mikael@lilotux.net>
date Thu, 15 Dec 2005 13:09:36 +0100
parents 9516db839e08
children 0b4ed231ebc2
comparison
equal deleted inserted replaced
604:2e8342168ebc 605:2a4fefb98511
47 } 47 }
48 48
49 static void gotroster(xmlnode x) 49 static void gotroster(xmlnode x)
50 { 50 {
51 xmlnode y; 51 xmlnode y;
52 const char *jid, *name, *group, *sub; 52 const char *jid, *name, *group, *sub, *ask;
53 char *buddyname; 53 char *buddyname;
54 char *cleanalias; 54 char *cleanalias;
55 enum subscr esub; 55 enum subscr esub;
56 int need_refresh = FALSE; 56 int need_refresh = FALSE;
57 57
60 gchar *group_noutf8 = NULL; 60 gchar *group_noutf8 = NULL;
61 61
62 jid = xmlnode_get_attrib(y, "jid"); 62 jid = xmlnode_get_attrib(y, "jid");
63 name = xmlnode_get_attrib(y, "name"); 63 name = xmlnode_get_attrib(y, "name");
64 sub = xmlnode_get_attrib(y, "subscription"); 64 sub = xmlnode_get_attrib(y, "subscription");
65 ask = xmlnode_get_attrib(y, "ask");
65 66
66 group = xmlnode_get_tag_data(y, "group"); 67 group = xmlnode_get_tag_data(y, "group");
67 68
68 if (!jid) 69 if (!jid)
69 continue; 70 continue;
84 "from the roster", cleanalias); 85 "from the roster", cleanalias);
85 g_free(cleanalias); 86 g_free(cleanalias);
86 need_refresh = TRUE; 87 need_refresh = TRUE;
87 continue; 88 continue;
88 } 89 }
90
91 if (ask && !strcmp(ask, "subscribe"))
92 esub |= sub_pending;
89 93
90 if (name) { 94 if (name) {
91 name_noutf8 = from_utf8(name); 95 name_noutf8 = from_utf8(name);
92 if (name_noutf8) 96 if (name_noutf8)
93 buddyname = name_noutf8; 97 buddyname = name_noutf8;