* fhandler_tty.cc (fhandler_tty_common::dup): Just copy cygheap->ctty to child

if duping the current ctty.
(fhandler_tty_common::close): Move debugging statement earlier in function.
(fhandler_tty_slave::close): Return success when closing ctty.
* syscalls.cc (close_all_files): Avoid calling fhandler_tty_slave close method
so that open_fhs will not be decremented when closing cygheap ctty.
(setsid): Ditto.
* dcrt0.cc (do_exit): Reorganize to avoid leaving a critical section active
after vfork.
* fhandler.h (fhandler_tty_slave::get_unit): Remove regparm parameter since it
can't work in a virtualized function.
This commit is contained in:
Christopher Faylor
2003-12-10 03:19:19 +00:00
parent 7176387b4f
commit ce40c6baf7
5 changed files with 40 additions and 22 deletions

View File

@ -918,7 +918,7 @@ class fhandler_tty_slave: public fhandler_tty_common
_off64_t lseek (_off64_t, int) { return 0; }
select_record *select_read (select_record *s);
int cygserver_attach_tty (HANDLE*, HANDLE*);
int get_unit () __attribute__ ((regparm (1)));
int get_unit ();
virtual char const *ttyname () { return pc.dev.name; }
};