src/protocols/oscar/oscar.c

changeset 12350
f45d8434a759
parent 12349
212226bfabe2
child 12361
9d2adb3258a8
--- a/src/protocols/oscar/oscar.c	Mon Dec 05 06:52:30 2005 +0000
+++ b/src/protocols/oscar/oscar.c	Mon Dec 05 06:58:00 2005 +0000
@@ -3464,7 +3464,6 @@
 	struct buddyinfo *bi;
 	time_t time_idle = 0, signon = 0;
 	int type = 0;
-	int caps = 0;
 	gboolean buddy_is_away = FALSE;
 	const char *status_id;
 	gboolean have_status_message = FALSE;
@@ -3542,22 +3541,28 @@
 	else
 		gaim_prpl_got_user_status(account, info->sn, status_id, NULL);
 
-	if (info->present & AIM_USERINFO_PRESENT_CAPABILITIES)
-		caps = info->capabilities;
-
-	if (caps & AIM_CAPS_ICQ_DIRECT)
-		caps ^= AIM_CAPS_ICQ_DIRECT;
-
+	/* Login time stuff */
 	if (info->present & AIM_USERINFO_PRESENT_ONLINESINCE)
 		signon = info->onlinesince;
 	else if (info->present & AIM_USERINFO_PRESENT_SESSIONLEN)
 		signon = time(NULL) - info->sessionlen;
-
 	if (!aim_sncmp(gaim_account_get_username(account), info->sn)) {
 		gaim_connection_set_display_name(gc, info->sn);
 		od->timeoffset = signon - gaim_presence_get_login_time(presence);
 	}
-
+	gaim_prpl_got_user_login_time(account, info->sn, signon - od->timeoffset);
+
+	/* Idle time stuff */
+	/* info->idletime is the number of minutes that this user has been idle */
+	if (info->present & AIM_USERINFO_PRESENT_IDLE)
+		time_idle = time(NULL) - info->idletime * 60;
+
+	if (time_idle > 0)
+		gaim_prpl_got_user_idle(account, info->sn, TRUE, time_idle);
+	else
+		gaim_prpl_got_user_idle(account, info->sn, FALSE, 0);
+
+	/* Server stored icon stuff */
 	bi = g_hash_table_lookup(od->buddyinfo, gaim_normalize(account, info->sn));
 	if (!bi) {
 		bi = g_new0(struct buddyinfo, 1);
@@ -3567,7 +3572,6 @@
 	bi->ico_informed = FALSE;
 	bi->ipaddr = info->icqinfo.ipaddr;
 
-	/* Server stored icon stuff */
 	if (info->iconcsumlen) {
 		const char *filename = NULL, *saved_b16 = NULL;
 		char *b16 = NULL, *filepath = NULL;
@@ -3609,17 +3613,6 @@
 		g_free(b16);
 	}
 
-	gaim_prpl_got_user_login_time(account, info->sn, signon - od->timeoffset);
-
-	/* info->idletime is the number of minutes that this user has been idle */
-	if (info->present & AIM_USERINFO_PRESENT_IDLE)
-		time_idle = time(NULL) - info->idletime * 60;
-
-	if (time_idle > 0)
-		gaim_prpl_got_user_idle(account, info->sn, TRUE, time_idle);
-	else
-		gaim_prpl_got_user_idle(account, info->sn, FALSE, 0);
-
 	return 1;
 }
 

mercurial