From 2f8d1abe7c92d2211f675ec7d119705b5822a03f Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Wed, 11 Aug 1993 20:04:39 +0000 Subject: [PATCH] Formerly main.c.~93~ --- main.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/main.c b/main.c index 412079a..31f4416 100644 --- a/main.c +++ b/main.c @@ -498,9 +498,15 @@ main (argc, argv, envp) for (i = 0; envp[i] != 0; ++i) { register char *ep = envp[i]; - while (*ep++ != '=') - ; - (void) define_variable (envp[i], ep - envp[i] - 1, ep, o_env, 1); + while (*ep != '=') + ++ep; + define_variable (envp[i], ep - envp[i], ep + 1, o_env, 1) + /* Force exportation of every variable culled from the environment. + We used to rely on target_environment's v_default code to do this. + But that does not work for the case where an environment variable + is redefined in a makefile with `override'; it should then still + be exported, because it was originally in the environment. */ + ->export = v_export; } /* Decode the switches. */ -- 2.7.4