From 2ffc166d0765bec680139e82dd50723ea0e53364 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Thu, 7 Dec 2006 10:04:52 +0000 Subject: * cygheap.h (struct cwdstuff): Add "sync" member and accompanying "keep_in_sync" methods. * external.cc (cygwin_internal): Call above keep_in_sync method when CW_SYNC_WINENV is requested. * path.cc (cwdstuff::init): Don't change to windows_system_directory if keep_in_sync is requested. (cwdstuff::keep_in_sync): New method. (cwdstuff::set): Take sync flag into account. --- winsup/cygwin/cygheap.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'winsup/cygwin/cygheap.h') diff --git a/winsup/cygwin/cygheap.h b/winsup/cygwin/cygheap.h index 85da8f6ed..0c54bad1a 100644 --- a/winsup/cygwin/cygheap.h +++ b/winsup/cygwin/cygheap.h @@ -230,6 +230,7 @@ struct cwdstuff char *win32; DWORD hash; DWORD drive_length; + bool sync; static muto cwd_lock; char *get (char *, int = 1, int = 0, unsigned = CYG_MAX_PATH); DWORD get_hash (); @@ -244,6 +245,8 @@ struct cwdstuff void fixup_after_exec (char *, char *, DWORD); bool get_initial (); int set (const char *, const char *, bool); + bool keep_in_sync () const { return sync; } + void keep_in_sync (bool val); }; #ifdef DEBUGGING -- cgit v1.2.3