Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2000-11-14 08:53:32 +0300
committerChristopher Faylor <me@cgf.cx>2000-11-14 08:53:32 +0300
commita4785603b85b80ea0cc5ea0038bbbb3a13513714 (patch)
tree3bb9ab5f76acbe2fbca946b6c4f9439a8aa42c58 /winsup/cygwin/dir.cc
parent70a11195b9bf3617e3dbe4b9de034b3792c65621 (diff)
* cygheap.h (init_cygheap): New struct holding values that live in the Cygwin
heap. * child_info.h (child_info): Change pointer type of cygheap to init_cygheap. * cygheap.cc (init_cheap): Point cygheap_max after contents of cygheap. Move some stuff into cygheap.h. * dir.cc (opendir): Change to use root and rootlen in cygheap rather than in myself. (mkdir): Change to use umask in cygheap rather than in myself. * path.cc: Ditto, throughout. * syscalls.cc (_open): Ditto. Change to use umask in cygheap rather than in myself. (chroot): Change to allocate root dir on the cygwin heap. (umask): Change to use umask in cygheap rather than in myself. (cygwin_bind): Ditto. * sigproc.cc (proc_subproc): Don't copy umask or root stuff as this happens automatically now. * pinfo.h (_pinfo): Migrate stuff out of here and into init_cheap. * dcrt0.cc (dll_crt0_1): Call cygheap_init later in startup for first cygwin process.
Diffstat (limited to 'winsup/cygwin/dir.cc')
-rw-r--r--winsup/cygwin/dir.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/winsup/cygwin/dir.cc b/winsup/cygwin/dir.cc
index d2b8bfec0..b510e2267 100644
--- a/winsup/cygwin/dir.cc
+++ b/winsup/cygwin/dir.cc
@@ -24,6 +24,7 @@ details. */
#include "fhandler.h"
#include "path.h"
#include "security.h"
+#include "cygheap.h"
/* Cygwin internal */
/* Return whether the directory of a file is writable. Return 1 if it
@@ -75,7 +76,7 @@ opendir (const char *dirname)
goto failed;
}
- if (stat (myself->rootlen ? dirname : real_dirname.get_win32 (),
+ if (stat (cygheap->rootlen ? dirname : real_dirname.get_win32 (),
&statbuf) == -1)
goto failed;
@@ -298,7 +299,7 @@ mkdir (const char *dir, mode_t mode)
if (CreateDirectoryA (real_dir.get_win32 (), 0))
{
set_file_attribute (real_dir.has_acls (), real_dir.get_win32 (),
- S_IFDIR | ((mode & 0777) & ~myself->umask));
+ S_IFDIR | ((mode & 0777) & ~cygheap->umask));
res = 0;
}
else