comparison libpurple/account.c @ 21418:38cc722159ff

propagate from branch 'im.pidgin.pidgin' (head d8103be97302efb404e2f6922925f661c807ad23) to branch 'im.pidgin.cpw.resiak.disconnectreason' (head 0ac25a1f38ae28654c967caa143f1c0d12ef2e1c)
author Will Thompson <will.thompson@collabora.co.uk>
date Sat, 10 Nov 2007 12:10:04 +0000
parents ff5cd00e4f14 6de09629f091
children 9fe16ecaa4ab
comparison
equal deleted inserted replaced
21417:21bea7c72a80 21418:38cc722159ff
58 58
59 union 59 union
60 { 60 {
61 int integer; 61 int integer;
62 char *string; 62 char *string;
63 gboolean bool; 63 gboolean boolean;
64 64
65 } value; 65 } value;
66 66
67 } PurpleAccountSetting; 67 } PurpleAccountSetting;
68 68
116 xmlnode_set_attrib(child, "type", "string"); 116 xmlnode_set_attrib(child, "type", "string");
117 xmlnode_insert_data(child, setting->value.string, -1); 117 xmlnode_insert_data(child, setting->value.string, -1);
118 } 118 }
119 else if (setting->type == PURPLE_PREF_BOOLEAN) { 119 else if (setting->type == PURPLE_PREF_BOOLEAN) {
120 xmlnode_set_attrib(child, "type", "bool"); 120 xmlnode_set_attrib(child, "type", "bool");
121 snprintf(buf, sizeof(buf), "%d", setting->value.bool); 121 snprintf(buf, sizeof(buf), "%d", setting->value.boolean);
122 xmlnode_insert_data(child, buf, -1); 122 xmlnode_insert_data(child, buf, -1);
123 } 123 }
124 } 124 }
125 125
126 static void 126 static void
1707 g_return_if_fail(name != NULL); 1707 g_return_if_fail(name != NULL);
1708 1708
1709 setting = g_new0(PurpleAccountSetting, 1); 1709 setting = g_new0(PurpleAccountSetting, 1);
1710 1710
1711 setting->type = PURPLE_PREF_BOOLEAN; 1711 setting->type = PURPLE_PREF_BOOLEAN;
1712 setting->value.bool = value; 1712 setting->value.boolean = value;
1713 1713
1714 g_hash_table_insert(account->settings, g_strdup(name), setting); 1714 g_hash_table_insert(account->settings, g_strdup(name), setting);
1715 1715
1716 schedule_accounts_save(); 1716 schedule_accounts_save();
1717 } 1717 }
1793 1793
1794 setting = g_new0(PurpleAccountSetting, 1); 1794 setting = g_new0(PurpleAccountSetting, 1);
1795 1795
1796 setting->type = PURPLE_PREF_BOOLEAN; 1796 setting->type = PURPLE_PREF_BOOLEAN;
1797 setting->ui = g_strdup(ui); 1797 setting->ui = g_strdup(ui);
1798 setting->value.bool = value; 1798 setting->value.boolean = value;
1799 1799
1800 table = get_ui_settings_table(account, ui); 1800 table = get_ui_settings_table(account, ui);
1801 1801
1802 g_hash_table_insert(table, g_strdup(name), setting); 1802 g_hash_table_insert(table, g_strdup(name), setting);
1803 1803
2068 if (setting == NULL) 2068 if (setting == NULL)
2069 return default_value; 2069 return default_value;
2070 2070
2071 g_return_val_if_fail(setting->type == PURPLE_PREF_BOOLEAN, default_value); 2071 g_return_val_if_fail(setting->type == PURPLE_PREF_BOOLEAN, default_value);
2072 2072
2073 return setting->value.bool; 2073 return setting->value.boolean;
2074 } 2074 }
2075 2075
2076 int 2076 int
2077 purple_account_get_ui_int(const PurpleAccount *account, const char *ui, 2077 purple_account_get_ui_int(const PurpleAccount *account, const char *ui,
2078 const char *name, int default_value) 2078 const char *name, int default_value)
2134 if ((setting = g_hash_table_lookup(table, name)) == NULL) 2134 if ((setting = g_hash_table_lookup(table, name)) == NULL)
2135 return default_value; 2135 return default_value;
2136 2136
2137 g_return_val_if_fail(setting->type == PURPLE_PREF_BOOLEAN, default_value); 2137 g_return_val_if_fail(setting->type == PURPLE_PREF_BOOLEAN, default_value);
2138 2138
2139 return setting->value.bool; 2139 return setting->value.boolean;
2140 } 2140 }
2141 2141
2142 PurpleLog * 2142 PurpleLog *
2143 purple_account_get_log(PurpleAccount *account, gboolean create) 2143 purple_account_get_log(PurpleAccount *account, gboolean create)
2144 { 2144 {
2354 { 2354 {
2355 PurpleAccountPrivate *priv = PURPLE_ACCOUNT_GET_PRIVATE(account); 2355 PurpleAccountPrivate *priv = PURPLE_ACCOUNT_GET_PRIVATE(account);
2356 return priv->current_error; 2356 return priv->current_error;
2357 } 2357 }
2358 2358
2359 void 2359 static void
2360 purple_account_clear_current_error(PurpleAccount *account) 2360 signed_on_cb(PurpleConnection *gc,
2361 { 2361 gpointer unused)
2362 set_current_error(account, NULL); 2362 {
2363 } 2363 PurpleAccount *account = purple_connection_get_account(gc);
2364 2364 purple_account_clear_current_error(account);
2365 2365 }
2366 void 2366 void
2367 purple_accounts_add(PurpleAccount *account) 2367 purple_accounts_add(PurpleAccount *account)
2368 { 2368 {
2369 g_return_if_fail(account != NULL); 2369 g_return_if_fail(account != NULL);
2370 2370