diff options
author | Yang Tse <yangsita@gmail.com> | 2007-09-27 00:58:41 +0000 |
---|---|---|
committer | Yang Tse <yangsita@gmail.com> | 2007-09-27 00:58:41 +0000 |
commit | 9c5cd6c4137e2c0f238b6f767fe40fdacb9b6ede (patch) | |
tree | b8b0c922e42b20622dafef55d2add6d1e546be24 | |
parent | 9b55056423e2e29f49ab8825133ceb5ac106a2b2 (diff) |
Fix compiler warning: the address of 'env' will always evaluate as 'true'
-rw-r--r-- | lib/getenv.c | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/lib/getenv.c b/lib/getenv.c index 4f955f893..475c3d3ca 100644 --- a/lib/getenv.c +++ b/lib/getenv.c @@ -5,7 +5,7 @@ * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) 1998 - 2005, Daniel Stenberg, <daniel@haxx.se>, et al. + * Copyright (C) 1998 - 2007, Daniel Stenberg, <daniel@haxx.se>, et al. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms @@ -48,18 +48,15 @@ char *GetEnv(const char *variable) env[0] = '\0'; if (temp != NULL) ExpandEnvironmentStrings(temp, env, sizeof(env)); + return (env[0] != '\0')?strdup(env):NULL; #else -#ifdef VMS - char *env = getenv(variable); - if (env && strcmp("HOME",variable) == 0) { - env = decc$translate_vms(env); - } -#else - /* no length control */ char *env = getenv(variable); +#ifdef VMS + if (env && strcmp("HOME",variable) == 0) + env = decc$translate_vms(env); #endif + return env?strdup(env):NULL; #endif - return (env && env[0])?strdup(env):NULL; #endif } |