From 39add36fc3bc0cf244a408572d5a66fd4ce36eed Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Fri, 26 Dec 2003 18:26:17 +0000 Subject: [PATCH] * path.cc (mount_item::build_win32): Backslashify paths in non-managed case. --- winsup/cygwin/ChangeLog | 5 +++++ winsup/cygwin/exceptions.cc | 5 ++--- winsup/cygwin/path.cc | 5 ++++- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 6a24494f8..4f3b63625 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,8 @@ +2003-12-26 Christopher Faylor + + * path.cc (mount_item::build_win32): Backslashify paths in non-managed + case. + 2003-12-25 Christopher Faylor * dcrt0.cc (reent_data): Reluctantly resurrect. diff --git a/winsup/cygwin/exceptions.cc b/winsup/cygwin/exceptions.cc index ee550915f..228d2c8e2 100644 --- a/winsup/cygwin/exceptions.cc +++ b/winsup/cygwin/exceptions.cc @@ -710,11 +710,10 @@ setup_handler (int sig, void *handler, struct sigaction& siga, _threadinfo *tls) for (int i = 0; i < CALL_HANDLER_RETRY; i++) { - __stack_t retaddr; __stack_t *retaddr_on_stack = tls->stackptr - 1; - if (retaddr_on_stack >= tls->stack - && (retaddr = InterlockedExchange ((LONG *) retaddr_on_stack, 0))) + if (retaddr_on_stack >= tls->stack) { + __stack_t retaddr = InterlockedExchange ((LONG *) retaddr_on_stack, 0); if (!retaddr) continue; tls->reset_exception (); diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc index 0f60be4d1..a7d95df71 100644 --- a/winsup/cygwin/path.cc +++ b/winsup/cygwin/path.cc @@ -1280,7 +1280,10 @@ mount_item::build_win32 (char *dst, const char *src, unsigned *outflags, unsigne else if ((!(flags & MOUNT_ENC) && isdrive (dst) && !dst[2]) || *p) dst[n++] = '\\'; if (!*p || !(flags & MOUNT_ENC)) - strcpy (dst + n, p); + { + strcpy (dst + n, p); + backslashify (dst, dst, 0); + } else while (*p) { -- 2.43.5