* cygheap.h (init_cygheap): Move heap pointers here.

* include/sys/cygwin.h (perprocess): Remove heap pointers.
* dcrt0.cc (__cygwin_user_data): Reflect obsolete perprocess stuff.
(_dll_crt0): Don't initialize heap pointers.
(cygwin_dll_init): Ditto.
(release_upto): Use heap pointers from cygheap.
* heap.h: Ditto.
* fork.cc (fork_parent): Ditto.  Don't set heap pointers in ch.
(fork_child): Remove obsolete sigproc_fixup_after_fork.
* shared.cc (memory_init): Reorganize so that cygheap initialization is called
prior to regular heap since regular heap uses cygheap now.
* sigproc.cc (proc_subproc): Eliminate zombies allocation.
(sigproc_init): Move zombies alloation here.  Don't free up array on fork, just
reuse it.
(sigproc_fixup_after_fork): Eliminate.
* sigproc.h: Ditto.
* include/cygwin/version.h: Reflect change to perprocess structure.
This commit is contained in:
Christopher Faylor
2001-09-07 21:32:07 +00:00
parent b2d319cb3e
commit 1ff9f4b937
43 changed files with 566 additions and 538 deletions

View File

@ -960,7 +960,7 @@ fhandler_disk_file::fstat (struct stat *buf)
{
/* If read-only attribute is set, modify ntsec return value */
if ((local.dwFileAttributes & FILE_ATTRIBUTE_READONLY)
&& !get_symlink_p ())
&& !get_symlink_p ())
buf->st_mode &= ~(S_IWUSR | S_IWGRP | S_IWOTH);
if (!(buf->st_mode & S_IFMT))
@ -1094,9 +1094,9 @@ int fhandler_base::fcntl (int cmd, void *arg)
* Since O_ASYNC isn't defined in fcntl.h it's currently
* ignored as well.
*/
const int allowed_flags = O_APPEND | O_NONBLOCK_MASK;
const int allowed_flags = O_APPEND | O_NONBLOCK_MASK;
int new_flags = (int) arg & allowed_flags;
/* Carefully test for the O_NONBLOCK or deprecated OLD_O_NDELAY flag.
/* Carefully test for the O_NONBLOCK or deprecated OLD_O_NDELAY flag.
Set only the flag that has been passed in. If both are set, just
record O_NONBLOCK. */
if ((new_flags & OLD_O_NDELAY) && (new_flags & O_NONBLOCK))
@ -1249,7 +1249,7 @@ fhandler_disk_file::open (const char *path, int flags, mode_t mode)
|| !(flags & O_CREAT) || real_path.case_clash))
{
set_errno (flags & O_CREAT && real_path.case_clash ? ECASECLASH
: real_path.error);
: real_path.error);
syscall_printf ("0 = fhandler_disk_file::open (%s, %p)", path, flags);
return 0;
}