Mercurial > pidgin
comparison libpurple/protocols/jabber/jabber.h @ 23648:9bf36aad8735
We talked about this and decided it was probably cleaner to not use
a static variable here.
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Wed, 06 Aug 2008 09:27:06 +0000 |
parents | 224169be5830 |
children | 3c3032be12de 4bc74deeb503 |
comparison
equal
deleted
inserted
replaced
23647:bfbad8f78ec6 | 23648:9bf36aad8735 |
---|---|
105 /* SASL authentication */ | 105 /* SASL authentication */ |
106 char *expected_rspauth; | 106 char *expected_rspauth; |
107 | 107 |
108 GHashTable *buddies; | 108 GHashTable *buddies; |
109 gboolean roster_parsed; | 109 gboolean roster_parsed; |
110 | |
111 /* | |
112 * This boolean was added to eliminate a heinous bug where we would | |
113 * get into a loop with the server and move a buddy back and forth | |
114 * from one group to another. | |
115 * | |
116 * The sequence goes something like this: | |
117 * 1. Our resource and another resource both approve an authorization | |
118 * request at the exact same time. We put the buddy in group A and | |
119 * the other resource put the buddy in group B. | |
120 * 2. The server receives the roster add for group B and sends us a | |
121 * roster push. | |
122 * 3. We receive this roster push and modify our local blist. This | |
123 * triggers us to send a roster add for group B. | |
124 * 4. The server recieves our earlier roster add for group A and sends | |
125 * us a roster push. | |
126 * 5. We receive this roster push and modify our local blist. This | |
127 * triggers us to send a roster add for group A. | |
128 * 6. The server receives our earlier roster add for group B and sends | |
129 * us a roster push. | |
130 * (repeat steps 3 through 6 ad infinitum) | |
131 * | |
132 * This boolean is used to short-circuit the sending of a roster add | |
133 * when we receive a roster push. | |
134 * | |
135 * See these bug reports: | |
136 * http://trac.adiumx.com/ticket/8834 | |
137 * http://developer.pidgin.im/ticket/5484 | |
138 * http://developer.pidgin.im/ticket/6188 | |
139 */ | |
140 gboolean currently_parsing_roster_push; | |
110 | 141 |
111 GHashTable *chats; | 142 GHashTable *chats; |
112 GList *chat_servers; | 143 GList *chat_servers; |
113 PurpleRoomlist *roomlist; | 144 PurpleRoomlist *roomlist; |
114 GList *user_directories; | 145 GList *user_directories; |