From 03d8ea4c5ae9d33fc0bb06040b66bae02bd9eae6 Mon Sep 17 00:00:00 2001 From: Přemysl Eric Janouch Date: Fri, 26 Aug 2022 04:59:25 +0200 Subject: xC: general.save_on_quit -> general.autosave Power outages and similar situations make the former unreliable, so get rid of any false promise it might seem to give. --- xC.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'xC.c') diff --git a/xC.c b/xC.c index d4efc2a..535fbd9 100644 --- a/xC.c +++ b/xC.c @@ -2422,8 +2422,8 @@ static struct config_schema g_config_server[] = static struct config_schema g_config_general[] = { - { .name = "save_on_quit", - .comment = "Save configuration before quitting", + { .name = "autosave", + .comment = "Save configuration automatically after each change", .type = CONFIG_ITEM_BOOLEAN, .default_ = "on" }, { .name = "debug_mode", @@ -11363,6 +11363,8 @@ static bool handle_command_set_assign (struct app_context *ctx, struct strv *all, char *arguments) { + hard_assert (all->len > 0); + char *op = cut_word (&arguments); bool add = false; bool remove = false; @@ -11397,6 +11399,9 @@ handle_command_set_assign free (key); } config_item_destroy (new_); + + if (get_config_boolean (ctx->config.root, "general.autosave")) + save_configuration (ctx); return true; } @@ -14748,9 +14753,6 @@ main (int argc, char *argv[]) CALL (ctx.input, stop); - if (get_config_boolean (ctx.config.root, "general.save_on_quit")) - save_configuration (&ctx); - app_context_free (&ctx); toggle_bracketed_paste (false); free_terminal (); -- cgit v1.2.3-54-g00ecf