diff src/aim.c @ 228:f3b61c04f44e

[gaim-migrate @ 238] Buddy lists (and changes) are cached to ~/.gaimbdcache_<sn> where <sn> is your screen name (folder to uppercase). If for some reason, you log into the AOL server and the buddy list comes back empty, we check for a cache file, and, if we find one, read it in. This essentially implements recovery from a server crash at AOL (AOL does not back up machines that contain TOC-based buddy lists, unfortunately). committer: Tailor Script <tailor@pidgin.im>
author Syd Logan <slogan>
date Wed, 10 May 2000 07:41:25 +0000
parents f7e17fb767eb
children 5b28ef2b550e
line wrap: on
line diff
--- a/src/aim.c	Wed May 10 07:37:56 2000 +0000
+++ b/src/aim.c	Wed May 10 07:41:25 2000 +0000
@@ -38,6 +38,7 @@
 #include <string.h>
 #include <stdarg.h>
 #include <stdlib.h>
+#include <ctype.h>
 #include "gaim.h"
 #ifndef USE_APPLET
 #include "pixmaps/logo.xpm"
@@ -117,11 +118,14 @@
 	gtk_timeout_remove(snd_tmout);
 }
 
+char g_screenname[ 64 ];	/* gotta be enough */
+
 void dologin(GtkWidget *widget, GtkWidget *w)
 {
 	static gboolean running = FALSE;
 	char *username = gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(name)->entry));
         char *password = gtk_entry_get_text(GTK_ENTRY(pass));
+	int i;
 
         if (query_state() != STATE_OFFLINE)
                 return;
@@ -135,6 +139,16 @@
 		return;
 	}
 
+	/* save screenname away for cache file use */
+
+	strcpy( g_screenname, username );
+
+	/* fold cache screen name file to upper case to avoid problems
+	   finding file later if user uses different case at login time */
+
+	for ( i = 0; i < strlen( g_screenname ); i++ )
+		g_screenname[i] = toupper( g_screenname[i] );
+
 #ifdef USE_APPLET
 	set_applet_draw_closed();
 	setUserState(signing_on);