From 25e0459979a55b378a2bc7b39ffc5ef0f467fea5 Mon Sep 17 00:00:00 2001 From: Jabber Developer Date: Thu, 30 Apr 2026 19:01:10 +0000 Subject: [PATCH] fix(ai): persist API keys to disk after set/remove operations API keys set via /ai set token were only stored in memory and lost on client restart. prefs_ai_set_token() and prefs_ai_remove_token() mutated the in-memory prefs but never called _save_prefs(), unlike other preference setters in the same file. Both functions now call _save_prefs() after mutating the keyfile, ensuring API keys persist across client restarts as advertised. --- src/config/preferences.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/config/preferences.c b/src/config/preferences.c index 4dbea77a..d765fc88 100644 --- a/src/config/preferences.c +++ b/src/config/preferences.c @@ -1722,6 +1722,7 @@ prefs_ai_set_token(const char* const provider, const char* const token) if (token) { g_key_file_set_string(prefs, PREF_GROUP_AI, provider, token); + _save_prefs(); return TRUE; } else { return prefs_ai_remove_token(provider); @@ -1742,6 +1743,7 @@ prefs_ai_remove_token(const char* const provider) } g_key_file_remove_key(prefs, PREF_GROUP_AI, provider, NULL); + _save_prefs(); return TRUE; }