diff 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
line wrap: on
line diff
--- a/src/protocols/oscar/locate.c	Thu Feb 26 07:22:47 2004 +0000
+++ b/src/protocols/oscar/locate.c	Thu Feb 26 08:29:32 2004 +0000
@@ -257,7 +257,7 @@
 	}
 }
 
-static void aim_locate_dorequest(aim_session_t *sess) {
+faim_export void aim_locate_dorequest(aim_session_t *sess) {
 	struct userinfo_node *cur = sess->locate.torequest;
 
 	if (cur == NULL)
@@ -309,8 +309,13 @@
 	}
 
 	if (!was_explicit) {
+		aim_conn_t *conn = aim_conn_findbygroup(sess, AIM_CB_FAM_LOC);
+		aim_rxcallback_t userfunc;
+
 		sess->locate.waiting_for_response = FALSE;
-		aim_locate_dorequest(sess);
+
+		if ((userfunc = aim_callhandler(sess, conn, AIM_CB_FAM_LOC, AIM_CB_LOC_REQUESTINFOTIMEOUT)))
+			userfunc(sess, NULL);
 	}
 
 	return was_explicit;