diff options
author | eban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2006-02-06 07:13:53 +0000 |
---|---|---|
committer | eban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2006-02-06 07:13:53 +0000 |
commit | 9e58e4a5e71d0afab3e3b7ed531a927ef36e4c58 (patch) | |
tree | a83715430a8d1b8b4dbeef96ecb905641a7f2d69 | |
parent | 1e34639d386e217e49e05cef91b81f749d79d4c6 (diff) |
* file.c (cygwin_flock): save old errno.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9904 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | file.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -3112,9 +3112,12 @@ static int #include <winerror.h> cygwin_flock(int fd, int op) { + int old_errno = errno; int ret = flock(fd, op); - if (GetLastError() == ERROR_NOT_LOCKED) + if (GetLastError() == ERROR_NOT_LOCKED) { ret = 0; + errno = old_errno; + } return ret; } # define flock(fd, op) cygwin_flock(fd, op) |