* fhandler_tape.cc (fhandler_dev_tape::close): Don't do "extra stuff"

when we know we're execing.
This commit is contained in:
Corinna Vinschen 2005-07-05 07:28:52 +00:00
parent 35e456b7f5
commit 4ae72e8c0e
2 changed files with 21 additions and 10 deletions

View File

@ -1,3 +1,8 @@
2005-07-05 Corinna Vinschen <corinna@vinschen.de>
* fhandler_tape.cc (fhandler_dev_tape::close): Don't do "extra stuff"
when we know we're execing.
2005-07-04 Christopher Faylor <cgf@timesys.com>
Change foo (void) to foo () for all c++ functions throughout.
@ -46,7 +51,8 @@
release closed files or not.
* path.cc (symlink): Change argument names to reflect linux man page.
(symlink_worker): Ditto. Also appropriately set ENOENT for empty strings.
(symlink_worker): Ditto. Also appropriately set ENOENT for empty
strings.
2005-07-04 Pierre Humblet <pierre.humblet@ieee.org>

View File

@ -1243,17 +1243,22 @@ fhandler_dev_tape::open (int flags, mode_t)
int
fhandler_dev_tape::close ()
{
int ret, cret;
int ret = 0;
int cret = 0;
if (!hExeced)
{
lock (-1);
ret = mt->drive (driveno ())->close (get_handle (), is_rewind_device ());
if (mt_evt)
CloseHandle (mt_evt);
CloseHandle (mt_mtx);
if (ret)
__seterrno_from_win_error (ret);
cret = fhandler_dev_raw::close ();
return unlock (ret ? -1 : cret);
unlock (0);
}
if (mt_evt)
CloseHandle (mt_evt);
CloseHandle (mt_mtx);
return ret ? -1 : cret;
}
void