* fhandler.h (fhandler_base::cleanup): Mark as extern rather than inline.

* fhandler_base.cc (fhandler_base::cleanup): Define.
* fhandler_tty.cc (fhandler_pty_slave::cleanup): Call fhandler_base::cleanup.
(fhandler_pty_master::cleanup): Ditto.
This commit is contained in:
Christopher Faylor 2013-10-22 20:41:09 +00:00
parent 41f4cb7311
commit 015566ed00
4 changed files with 16 additions and 1 deletions

View File

@ -1,3 +1,11 @@
2013-10-22 Christopher Faylor <me.cygwin2013@cgf.cx>
* fhandler.h (fhandler_base::cleanup): Mark as extern rather than
inline.
* fhandler_base.cc (fhandler_base::cleanup): Define.
* fhandler_tty.cc (fhandler_pty_slave::cleanup): Call fhandler_base::cleanup.
(fhandler_pty_master::cleanup): Ditto.
2013-10-18 Christopher Faylor <me.cygwin2013@cgf.cx> 2013-10-18 Christopher Faylor <me.cygwin2013@cgf.cx>
* fhandler_termios.cc (tty_min::kill_pgrp): Don't send a signal to * fhandler_termios.cc (tty_min::kill_pgrp): Don't send a signal to

View File

@ -1109,6 +1109,11 @@ fhandler_base::close_with_arch ()
return res; return res;
} }
void
fhandler_base::cleanup ()
{
}
int int
fhandler_base::close () fhandler_base::close ()
{ {

View File

@ -315,7 +315,7 @@ class fhandler_base
int close_with_arch (); int close_with_arch ();
virtual int close (); virtual int close ();
virtual void cleanup () { return; } virtual void cleanup ();
int _archetype_usecount (const char *fn, int ln, int n) int _archetype_usecount (const char *fn, int ln, int n)
{ {
if (!archetype) if (!archetype)

View File

@ -573,6 +573,7 @@ fhandler_pty_slave::cleanup ()
synced or before a non-cygwin process has exited, it should be safe to synced or before a non-cygwin process has exited, it should be safe to
just close this normally. cgf 2006-05-20 */ just close this normally. cgf 2006-05-20 */
report_tty_counts (this, "closed", ""); report_tty_counts (this, "closed", "");
fhandler_base::cleanup ();
} }
int int
@ -1277,6 +1278,7 @@ fhandler_pty_master::cleanup ()
report_tty_counts (this, "closing master", ""); report_tty_counts (this, "closing master", "");
if (archetype) if (archetype)
from_master = to_master = NULL; from_master = to_master = NULL;
fhandler_base::cleanup ();
} }
int int