ayttm-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Ayttm-commits] CVS: ayttm/modules/aim-toc aim-toc.c,1.28,1.29


From: Colin Leroy <address@hidden>
Subject: [Ayttm-commits] CVS: ayttm/modules/aim-toc aim-toc.c,1.28,1.29
Date: Mon, 24 Mar 2003 04:54:38 -0500

Update of /cvsroot/ayttm/ayttm/modules/aim-toc
In directory subversions:/tmp/cvs-serv25056/modules/aim-toc

Modified Files:
        aim-toc.c 
Log Message:
Implement async connect
Fix status keeping online when login errors happene


Index: aim-toc.c
===================================================================
RCS file: /cvsroot/ayttm/ayttm/modules/aim-toc/aim-toc.c,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -r1.28 -r1.29
--- aim-toc.c   24 Mar 2003 08:07:48 -0000      1.28
+++ aim-toc.c   24 Mar 2003 09:54:36 -0000      1.29
@@ -261,7 +261,6 @@
        eb_debug(DBG_TOC, "eb_aim_disconnect %d %d\n", conn->fd, conn->seq_num);
        if(ela) {
                eb_aim_logout(ela);
-               eb_aim_login(ela);
        }
        else
                g_warning("NULL account associated with AIM connection");
@@ -716,23 +715,33 @@
 
        /*alad->connect_tag = activity_window_new(buff);*/
        
-       alad->conn = toc_signon( account->handle, alad->password,
+       toc_signon( account->handle, alad->password,
                              aim_server, atoi(aim_port), alad->aim_info);
        
        progress_window_close (alad->connect_tag);
+}
 
+static void eb_aim_logged_in (toc_conn *conn)
+{
+       struct eb_aim_local_account_data * alad;
+       eb_local_account *ela = find_local_account_by_handle(conn->username, 
SERVICE_INFO.protocol_id);
+       alad = (struct eb_aim_local_account_data 
*)ela->protocol_local_account_data;
+       alad->conn = conn;
+       
        if(!alad->conn)
        {
                g_warning("FAILED TO CONNECT TO AIM SERVER!!!!!!!!!!!!");
+               eb_aim_logout(ela);
                return;
        }
        if(alad->conn->fd == -1 )
        {
                g_warning("eb_aim UNKNOWN CONNECTION PROBLEM");
+               eb_aim_logout(ela);
                return;
        }
        eb_debug(DBG_TOC, "eb_aim_login %d %d\n", alad->conn->fd, 
alad->conn->seq_num );
-       alad->conn->account = account;
+       alad->conn->account = ela;
        alad->status = AIM_ONLINE;
        ref_count++;
        alad->input = eb_input_add(alad->conn->fd, EB_INPUT_READ, 
eb_aim_callback, alad);
@@ -741,16 +750,16 @@
 
        is_setting_state = 1;
        
-       if(account->status_menu)
-               eb_set_active_menu_status(account->status_menu, AIM_ONLINE);
+       if(ela->status_menu)
+               eb_set_active_menu_status(ela->status_menu, AIM_ONLINE);
 
        is_setting_state = 0;
-       account->connecting = 0;
-       account->connected = 1;
+       ela->connecting = 0;
+       ela->connected = 1;
        
-       toc_add_buddy(alad->conn,account->handle,
+       toc_add_buddy(alad->conn,ela->handle,
                        "Unknown");
-       aim_buddies = l_list_append(aim_buddies, account->handle);
+       aim_buddies = l_list_append(aim_buddies, ela->handle);
                                                                  
 }
 
@@ -1192,7 +1201,8 @@
        toc_user_info = eb_aim_user_info;
        toc_new_user = eb_aim_new_user;
        toc_new_group = eb_aim_new_group;
-
+       toc_logged_in = eb_aim_logged_in;
+       
        sc = g_new0( struct service_callbacks, 1 );
        sc->query_connected = eb_aim_query_connected;
        sc->login = eb_aim_login;





reply via email to

[Prev in Thread] Current Thread [Next in Thread]