Mercurial > pidgin.yaz
comparison src/protocols/oscar/locate.c @ 8341:fec4c1fb2ac8
[gaim-migrate @ 9065]
Alright, I had to lay down a little bit of smack. Here goes:
-Work around the rate-limit problem caused by Gaim auto-requesting
away messages too quickly. Basically there is now a 1.2sec gap
between each request. The downside is that it takes a bit longer
for Gaim to get everyone's away message initially. Adium shouldn't
need to do anything to take advantage of this. Fire (they use
libfaim, right?) will need to add a callback for
AIM_CB_LOC_REQUESTINFOTIMEOUT. Just search oscar.c for
gaim_reqinfo_timeout() and copy what that thing does.
-Attempt to do a better job showing away messages in tooltips.
Hopefully & and greater than and less than will show up correctly
now. I don't think there should be any side effects, but if you
mouse over someone and it crashes or you get a pango error let me know.
-Remove/combine some silly functions in util.c that few things use.
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Thu, 26 Feb 2004 08:29:32 +0000 |
parents | 697221d5d0ff |
children | 59e83fdb753e |
comparison
equal
deleted
inserted
replaced
8340:ab6ffc260785 | 8341:fec4c1fb2ac8 |
---|---|
255 cur->away_encoding = strdup(userinfo->away_encoding); | 255 cur->away_encoding = strdup(userinfo->away_encoding); |
256 cur->away_len = userinfo->away_len; | 256 cur->away_len = userinfo->away_len; |
257 } | 257 } |
258 } | 258 } |
259 | 259 |
260 static void aim_locate_dorequest(aim_session_t *sess) { | 260 faim_export void aim_locate_dorequest(aim_session_t *sess) { |
261 struct userinfo_node *cur = sess->locate.torequest; | 261 struct userinfo_node *cur = sess->locate.torequest; |
262 | 262 |
263 if (cur == NULL) | 263 if (cur == NULL) |
264 return; | 264 return; |
265 | 265 |
307 } else | 307 } else |
308 cur = cur->next; | 308 cur = cur->next; |
309 } | 309 } |
310 | 310 |
311 if (!was_explicit) { | 311 if (!was_explicit) { |
312 aim_conn_t *conn = aim_conn_findbygroup(sess, AIM_CB_FAM_LOC); | |
313 aim_rxcallback_t userfunc; | |
314 | |
312 sess->locate.waiting_for_response = FALSE; | 315 sess->locate.waiting_for_response = FALSE; |
313 aim_locate_dorequest(sess); | 316 |
317 if ((userfunc = aim_callhandler(sess, conn, AIM_CB_FAM_LOC, AIM_CB_LOC_REQUESTINFOTIMEOUT))) | |
318 userfunc(sess, NULL); | |
314 } | 319 } |
315 | 320 |
316 return was_explicit; | 321 return was_explicit; |
317 } | 322 } |
318 | 323 |