void prefs_account_free(PrefsAccount *ac_prefs) { if (!ac_prefs) return; tmp_ac_prefs = *ac_prefs; prefs_free(param); if (ac_prefs->tmp_pass) g_free(ac_prefs->tmp_pass); g_free(ac_prefs); }
static void prefs_event_cb( enum app_event_enum e, gpointer p, gint i) { switch(e) { case EVENT_MAIN_INIT: prefs_init(); break; case EVENT_MAIN_REGISTER_PREFS: prefs_register(PREFS_PREFS_AUTO_SAVE, PREFS_TYPE_BOOL, _("Save settings on exit"), NULL, NULL); break; case EVENT_MAIN_PRESET_PREFS: prefs_set(PREFS_PREFS_AUTO_SAVE, TRUE); break; case EVENT_MAIN_LOAD_PREFS: prefs_load(); break; case EVENT_MAIN_CLOSE: /* save configuration */ if(prefs_bool(PREFS_PREFS_AUTO_SAVE)) prefs_store(); prefs_free(); break; case EVENT_IFACE_RELOAD_CONFIG: /* force reload of config */ prefs_load(); break; case EVENT_IFACE_STORE_CONFIG: prefs_store(); break; default: break; } }