* child_info.h (CURR_CHILD_INFO_MAGIC): Reset.

(child_info_fork::mount_table): Remove.
(child_info_fork::myself_addr): Remove.
* fork.cc (fork_child): Don't set either of the above.
* dcrt0.cc (dll_crt0_1): Call memory_init as early as possible.
* fhandler_console.cc (console_state): Move to shared_info.h.
(fhandler_console::get_tty_stuff): Reflect open_shared arg change.
* pinfo.cc (myself_addr): Remove definition.
(pinfo::init): Get myself address from open_shared.
* pinfo.h (myself_addr): Remove declaration.
* shared.cc (open_shared): Rework so that known shared memory locations are
protected.  Take shared memory type as fifth argument.
(memory_init): Reflect open_shared arg change.
* shared_info.h (shared_locations): New enum.
(console_state): Move here.
(open_shared): Reflect open_shared arg change in declaration.
This commit is contained in:
Christopher Faylor
2002-10-15 07:03:45 +00:00
parent 54030e2146
commit fdb28b5e5f
9 changed files with 96 additions and 43 deletions

View File

@@ -85,14 +85,7 @@ str_to_con (char *d, const char *s, DWORD sz)
const char * get_nonascii_key (INPUT_RECORD&, char *);
struct console_state
{
tty_min tty_min_state;
dev_console dev_state;
};
static console_state NO_COPY *shared_console_info;
static console_state *shared_console_info_save;
dev_console NO_COPY *fhandler_console::dev_state;
@@ -104,10 +97,10 @@ fhandler_console::get_tty_stuff (int flags = 0)
if (dev_state)
return &shared_console_info->tty_min_state;
shared_console_info = shared_console_info_save =
shared_console_info =
(console_state *) open_shared (NULL, 0, cygheap->console_h,
sizeof (*shared_console_info),
shared_console_info_save);
SH_SHARED_CONSOLE);
dev_state = &shared_console_info->dev_state;
ProtectHandleINH (cygheap->console_h);