* cygthread.cc (cygthread::exit_thread): Define new method.
* cygthread.h (cygthread::exit_thread): Declare new method. * fhandler.h (fhandler_tty_master::hThread): Delete. (fhandler_tty_master::output_thread): Define. * fhandler_tty.cc (fhandler_tty_master::fhandler_tty_master): Adjust constructor. (fhandler_tty_master::init): Use cygthread rather than handle. (process_output): Use cygthread method to exit. (fhandler_tty_master::fixup_after_fork): Set output_thread to NULL after fork. (fhandler_tty_master::fixup_after_exec): Set output_thread to NULL after spawn/exec. * tty.cc (tty_list::terminate): Detach from output_thread using cygthread method.
This commit is contained in:
@ -921,12 +921,13 @@ class fhandler_pty_master: public fhandler_tty_common
|
||||
bool hit_eof ();
|
||||
};
|
||||
|
||||
class cygthread;
|
||||
class fhandler_tty_master: public fhandler_pty_master
|
||||
{
|
||||
public:
|
||||
/* Constructor */
|
||||
fhandler_console *console; // device handler to perform real i/o.
|
||||
HANDLE hThread; // process_output thread handle.
|
||||
cygthread *output_thread; // process_output thread
|
||||
|
||||
fhandler_tty_master (int unit);
|
||||
int init (int);
|
||||
|
Reference in New Issue
Block a user