aboutsummaryrefslogtreecommitdiff
path: root/winsup/cygwin/environ.cc
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2000-05-30 00:38:51 +0000
committerChristopher Faylor <me@cgf.cx>2000-05-30 00:38:51 +0000
commit75858e8a036c3746af4c93121823bfb2294a976b (patch)
tree0f517221f3b8d89f6563409e088ac5484c70a38e /winsup/cygwin/environ.cc
parentfc1df4b6c6d1b04a865474564ed28ff099f07c90 (diff)
downloadnewlib-75858e8a036c3746af4c93121823bfb2294a976b.zip
newlib-75858e8a036c3746af4c93121823bfb2294a976b.tar.gz
newlib-75858e8a036c3746af4c93121823bfb2294a976b.tar.bz2
* Makefile.in: Remove libadvapi32.a.
* autoload.h: Add additional field to autoload block for handling unimplemented functions. (LoadDLLfuncEx): New function which accepts additional parameter for controlling unimplemented function behavior. (LoadDLLfunc): Use LoadDLLfuncEx. * dcrt0.cc: Use new arguments for LoadDLLfunc. Add advapi32 routines. (noload): Rewrite in assembler. Handle new unimplemented function type. * exceptions.cc: Eliminate another vestige of StackWalk stuff. * net.cc: Use new arguments for LoadDLLfunc. * uinfo.cc: Ditto. * config.h.in: Remove obsolete define. * path.h (isdrive): New macro. * dcrt0.cc (globify): Use new macro to determine if a string refers to an MS-DOS drive. * environ.cc (winenv): Ditto. * spawn.cc (find_exec): Ditto. * path.cc (get_raw_device_number): Ditto. (mount_info::conv_to_posix_path): Ditto. (chdir): Ditto. (cygwin_posix_path_list_p): Ditto. (cygwin_split_path): Ditto. (path_conv::check): Move tmp_buf to beginning of function since it can be used earlier in the loop. Use tmp_buf rather than 'root' to hold root information. (mount_info::conv_to_win32_path): Add trailing slash to end of mount path when it translates to a drive. Add defensive code to avoid writing beyond the end of 'dst'.
Diffstat (limited to 'winsup/cygwin/environ.cc')
-rw-r--r--winsup/cygwin/environ.cc3
1 files changed, 1 insertions, 2 deletions
diff --git a/winsup/cygwin/environ.cc b/winsup/cygwin/environ.cc
index bb493b0..415b24c 100644
--- a/winsup/cygwin/environ.cc
+++ b/winsup/cygwin/environ.cc
@@ -543,8 +543,7 @@ winenv (const char * const *envp, int keep_posix)
else
*dstp = *srcp;
tl += strlen (*dstp) + 1;
- if ((*dstp)[0] == '!' && isalpha((*dstp)[1]) && (*dstp)[2] == ':' &&
- (*dstp)[3] == '=')
+ if ((*dstp)[0] == '!' && isdrive ((*dstp) + 1) && (*dstp)[3] == '=')
{
char *p = (char *) alloca (strlen (*dstp) + 1);
strcpy (p, *dstp);