]> granicus.if.org Git - neomutt/commitdiff
Let config file have precedence over environment
authorPietro Cerutti <gahr@gahr.ch>
Thu, 12 Apr 2018 09:58:59 +0000 (09:58 +0000)
committerRichard Russon <rich@flatcap.org>
Mon, 16 Apr 2018 15:55:24 +0000 (16:55 +0100)
Issue #1140

init.c

diff --git a/init.c b/init.c
index 0e80c389196d04549596eb8aad816b8dae81819a..40d0b43d546b1c5006ca116f42cbf96709affc69 100644 (file)
--- a/init.c
+++ b/init.c
@@ -3910,6 +3910,26 @@ int mutt_init(int skip_sys_rc, struct ListHead *commands)
     restore_default(&MuttVars[i]);
   }
 
+  /* "$mailcap_path" precedence: config file, environment, code */
+  const char *env_mc = mutt_str_getenv("MAILCAPS");
+  if (env_mc)
+    mutt_str_replace(&MailcapPath, env_mc);
+
+  /* "$tmpdir" precedence: config file, environment, code */
+  const char *env_tmp = mutt_str_getenv("TMPDIR");
+  if (env_tmp)
+    mutt_str_replace(&Tmpdir, env_tmp);
+
+  /* "$visual", "$editor" precedence: config file, environment, code */
+  const char *env_ed = mutt_str_getenv("VISUAL");
+  if (!env_ed)
+    env_ed = mutt_str_getenv("EDITOR");
+  if (env_ed)
+  {
+    mutt_str_replace(&Editor, env_ed);
+    mutt_str_replace(&Visual, env_ed);
+  }
+
   CurrentMenu = MENU_MAIN;
 
 #ifndef LOCALES_HACK
@@ -4036,26 +4056,6 @@ int mutt_init(int skip_sys_rc, struct ListHead *commands)
   if (!get_hostname())
     return 1;
 
-  /* "$mailcap_path" precedence: environment, config file, code */
-  const char *env_mc = mutt_str_getenv("MAILCAPS");
-  if (env_mc)
-    mutt_str_replace(&MailcapPath, env_mc);
-
-  /* "$tmpdir" precedence: environment, config file, code */
-  const char *env_tmp = mutt_str_getenv("TMPDIR");
-  if (env_tmp)
-    mutt_str_replace(&Tmpdir, env_tmp);
-
-  /* "$visual", "$editor" precedence: environment, config file, code */
-  const char *env_ed = mutt_str_getenv("VISUAL");
-  if (!env_ed)
-    env_ed = mutt_str_getenv("EDITOR");
-  if (env_ed)
-  {
-    mutt_str_replace(&Editor, env_ed);
-    mutt_str_replace(&Visual, env_ed);
-  }
-
   if (need_pause && !OptNoCurses)
   {
     log_queue_flush(log_disp_terminal);