When the user updates any config variable from the options menu, the new
config gets saved, but the in-memory state of the config variables is
not updated. This results in the old settings being used until the user
either opens the options menu again (which triggers a call to
load_config), or re-starts git-gui.

This change fixes that problem by re-loading the config variables when
the Save button is pressed in the options menu.

Signed-off-by: Pratyush Yadav <m...@yadavpratyush.com>
---

The commit can be found in the topic branch 'py/reload-config' at
https://github.com/prati0100/git-gui/tree/py/reload-config

Once reviewed, pull the commit 92582527b91750e47c2c3e4d1e2188998e9330ce
or just munge the patch and apply it locally, whichever you prefer.

 lib/option.tcl | 1 +
 1 file changed, 1 insertion(+)

diff --git a/lib/option.tcl b/lib/option.tcl
index e43971b..139cf44 100644
--- a/lib/option.tcl
+++ b/lib/option.tcl
@@ -344,6 +344,7 @@ proc do_save_config {w} {
        if {[catch {save_config} err]} {
                error_popup [strcat [mc "Failed to completely save options:"] 
"\n\n$err"]
        }
+       load_config 1
        reshow_diff
        destroy $w
 }
--
2.21.0

Reply via email to