diff libpurple/protocols/oscar/oscar.c @ 28881:30f8f2105740

I believe this change fixes offline message retrieval. Fixes #10663
author Mark Doliner <mark@kingant.net>
date Wed, 04 Nov 2009 23:39:08 +0000
parents bb923bcae9de
children 17617d892bc4
line wrap: on
line diff
--- a/libpurple/protocols/oscar/oscar.c	Wed Nov 04 22:47:18 2009 +0000
+++ b/libpurple/protocols/oscar/oscar.c	Wed Nov 04 23:39:08 2009 +0000
@@ -3999,9 +3999,6 @@
 	presence = purple_status_get_presence(status);
 	aim_srv_setidle(od, !purple_presence_is_idle(presence) ? 0 : time(NULL) - purple_presence_get_idle_time(presence));
 
-	/* Request offline messages for AIM and ICQ */
-	aim_im_reqofflinemsgs(od);
-
 	if (od->icq) {
 #ifdef OLDSTYLE_ICQ_OFFLINEMSGS
 		aim_icq_reqofflinemsgs(od);
@@ -4028,6 +4025,10 @@
 	 */
 	if (od->ssi.received_data) {
 		aim_srv_clientready(od, conn);
+
+		/* Request offline messages for AIM and ICQ */
+		aim_im_reqofflinemsgs(od);
+
 		purple_connection_set_state(gc, PURPLE_CONNECTED);
 	}
 
@@ -5444,6 +5445,10 @@
 	 */
 	if (od->bos.have_rights) {
 		aim_srv_clientready(od, conn);
+
+		/* Request offline messages for AIM and ICQ */
+		aim_im_reqofflinemsgs(od);
+
 		purple_connection_set_state(gc, PURPLE_CONNECTED);
 	}