comparison src/account.c @ 11251:ad9a61894d9b

[gaim-migrate @ 13420] sf patch #1242524, from Sadrul Habib Chowdhury gaim_account_is_connected fix committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Sat, 13 Aug 2005 05:54:34 +0000
parents b4b1be482b4e
children bb0d7b719af2
comparison
equal deleted inserted replaced
11250:4e25fb6678bd 11251:ad9a61894d9b
1000 gaim_account_disconnect(GaimAccount *account) 1000 gaim_account_disconnect(GaimAccount *account)
1001 { 1001 {
1002 GaimConnection *gc; 1002 GaimConnection *gc;
1003 1003
1004 g_return_if_fail(account != NULL); 1004 g_return_if_fail(account != NULL);
1005 g_return_if_fail(gaim_account_is_connected(account)); 1005 g_return_if_fail(!gaim_account_is_disconnected(account));
1006 1006
1007 gaim_debug_info("account", "Disconnecting account %p\n", account); 1007 gaim_debug_info("account", "Disconnecting account %p\n", account);
1008 1008
1009 account->disconnecting = TRUE; 1009 account->disconnecting = TRUE;
1010 1010
1511 g_hash_table_insert(table, g_strdup(name), setting); 1511 g_hash_table_insert(table, g_strdup(name), setting);
1512 1512
1513 schedule_accounts_save(); 1513 schedule_accounts_save();
1514 } 1514 }
1515 1515
1516 static GaimConnectionState
1517 gaim_account_get_state(const GaimAccount *account)
1518 {
1519 GaimConnection *gc;
1520
1521 g_return_val_if_fail(account != NULL, GAIM_DISCONNECTED);
1522
1523 gc = gaim_account_get_connection(account);
1524 if (!gc)
1525 return GAIM_DISCONNECTED;
1526
1527 return gaim_connection_get_state(gc);
1528 }
1529
1516 gboolean 1530 gboolean
1517 gaim_account_is_connected(const GaimAccount *account) 1531 gaim_account_is_connected(const GaimAccount *account)
1518 { 1532 {
1519 GaimConnection *gc; 1533 return (gaim_account_get_state(account) == GAIM_CONNECTED);
1520 1534 }
1521 g_return_val_if_fail(account != NULL, FALSE); 1535
1522 1536 gboolean
1523 gc = gaim_account_get_connection(account); 1537 gaim_account_is_connecting(const GaimAccount *account)
1524 1538 {
1525 /* TODO: The first way is better... but it doesn't work quite right yet */ 1539 return (gaim_account_get_state(account) == GAIM_CONNECTING);
1526 /* return ((gc != NULL) && GAIM_CONNECTION_IS_CONNECTED(gc)); */ 1540 }
1527 return ((gc != NULL) && gaim_connection_get_state(gc) != GAIM_DISCONNECTED); 1541
1542 gboolean
1543 gaim_account_is_disconnected(const GaimAccount *account)
1544 {
1545 return (gaim_account_get_state(account) == GAIM_DISCONNECTED);
1528 } 1546 }
1529 1547
1530 const char * 1548 const char *
1531 gaim_account_get_username(const GaimAccount *account) 1549 gaim_account_get_username(const GaimAccount *account)
1532 { 1550 {