diff options
author | Darren Tucker <dtucker@zip.com.au> | 2005-05-25 19:42:10 +1000 |
---|---|---|
committer | Darren Tucker <dtucker@zip.com.au> | 2005-05-25 19:42:10 +1000 |
commit | ae8c91ec0749282e220f9c56efee1444a072cf62 (patch) | |
tree | 7d544e7e6293b09a5f3b0da181f4e56f978bb40c /openbsd-compat/bsd-cygwin_util.c | |
parent | 328118aa798878a68398b92ba85adfb630bc5434 (diff) |
- (dtucker) [openbsd-compat/bsd-cygwin_util.c] Ensure sufficient memory
allocation when retrieving core Windows environment. Add CYGWIN variable
to propagated variables. Patch from vinschen at redhat.com, ok djm@
Diffstat (limited to 'openbsd-compat/bsd-cygwin_util.c')
-rw-r--r-- | openbsd-compat/bsd-cygwin_util.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/openbsd-compat/bsd-cygwin_util.c b/openbsd-compat/bsd-cygwin_util.c index f53abb6e2..b5e3cc52b 100644 --- a/openbsd-compat/bsd-cygwin_util.c +++ b/openbsd-compat/bsd-cygwin_util.c | |||
@@ -29,7 +29,7 @@ | |||
29 | 29 | ||
30 | #include "includes.h" | 30 | #include "includes.h" |
31 | 31 | ||
32 | RCSID("$Id: bsd-cygwin_util.c,v 1.13 2004/08/30 10:42:08 dtucker Exp $"); | 32 | RCSID("$Id: bsd-cygwin_util.c,v 1.14 2005/05/25 09:42:11 dtucker Exp $"); |
33 | 33 | ||
34 | #ifdef HAVE_CYGWIN | 34 | #ifdef HAVE_CYGWIN |
35 | 35 | ||
@@ -247,6 +247,7 @@ static struct wenv { | |||
247 | { NL("COMMONPROGRAMFILES=") }, | 247 | { NL("COMMONPROGRAMFILES=") }, |
248 | { NL("COMPUTERNAME=") }, | 248 | { NL("COMPUTERNAME=") }, |
249 | { NL("COMSPEC=") }, | 249 | { NL("COMSPEC=") }, |
250 | { NL("CYGWIN=") }, | ||
250 | { NL("NUMBER_OF_PROCESSORS=") }, | 251 | { NL("NUMBER_OF_PROCESSORS=") }, |
251 | { NL("OS=") }, | 252 | { NL("OS=") }, |
252 | { NL("PATH=") }, | 253 | { NL("PATH=") }, |
@@ -260,7 +261,7 @@ static struct wenv { | |||
260 | { NL("SYSTEMROOT=") }, | 261 | { NL("SYSTEMROOT=") }, |
261 | { NL("TMP=") }, | 262 | { NL("TMP=") }, |
262 | { NL("TEMP=") }, | 263 | { NL("TEMP=") }, |
263 | { NL("WINDIR=") }, | 264 | { NL("WINDIR=") } |
264 | }; | 265 | }; |
265 | 266 | ||
266 | char ** | 267 | char ** |
@@ -269,7 +270,7 @@ fetch_windows_environment(void) | |||
269 | char **e, **p; | 270 | char **e, **p; |
270 | int i, idx = 0; | 271 | int i, idx = 0; |
271 | 272 | ||
272 | p = xmalloc(WENV_SIZ * sizeof(char *)); | 273 | p = xmalloc((WENV_SIZ + 1) * sizeof(char *)); |
273 | for (e = environ; *e != NULL; ++e) { | 274 | for (e = environ; *e != NULL; ++e) { |
274 | for (i = 0; i < WENV_SIZ; ++i) { | 275 | for (i = 0; i < WENV_SIZ; ++i) { |
275 | if (!strncmp(*e, wenv_arr[i].name, wenv_arr[i].namelen)) | 276 | if (!strncmp(*e, wenv_arr[i].name, wenv_arr[i].namelen)) |