diff options
author | Eric Blake <eblake@redhat.com> | 2009-10-08 11:13:45 +0000 |
---|---|---|
committer | Eric Blake <eblake@redhat.com> | 2009-10-08 11:13:45 +0000 |
commit | 80636211bcb2137313d8af948578b3ce82bf3ac7 (patch) | |
tree | 72515baf8d9281576962e7f2e6cd9e84ae9d010d | |
parent | 8bd7bd3bc0987bb562fca5d8a361462c24235cbf (diff) | |
download | cygnal-80636211bcb2137313d8af948578b3ce82bf3ac7.tar.gz cygnal-80636211bcb2137313d8af948578b3ce82bf3ac7.tar.bz2 cygnal-80636211bcb2137313d8af948578b3ce82bf3ac7.zip |
* fhandler_disk_file.cc (utimens_fs): Plug fd leak on EINVAL.
-rw-r--r-- | winsup/cygwin/ChangeLog | 4 | ||||
-rw-r--r-- | winsup/cygwin/fhandler_disk_file.cc | 2 |
2 files changed, 6 insertions, 0 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 7cdb0c88d..6a90ac45f 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,7 @@ +2009-10-08 Eric Blake <ebb9@byu.net> + + * fhandler_disk_file.cc (utimens_fs): Plug fd leak on EINVAL. + 2009-10-07 Charles Wilson <cygwin@cwilson.fastmail.fm> Additional pseudo-reloc-v2 support diff --git a/winsup/cygwin/fhandler_disk_file.cc b/winsup/cygwin/fhandler_disk_file.cc index 99bbf8ba3..1e6a781e0 100644 --- a/winsup/cygwin/fhandler_disk_file.cc +++ b/winsup/cygwin/fhandler_disk_file.cc @@ -1310,6 +1310,8 @@ fhandler_base::utimens_fs (const struct timespec *tvp) if ((tvp[0].tv_nsec < UTIME_NOW || tvp[0].tv_nsec > 999999999L) || (tvp[1].tv_nsec < UTIME_NOW || tvp[1].tv_nsec > 999999999L)) { + if (closeit) + close_fs (); set_errno (EINVAL); return -1; } |