From 974408f2de8531f58e3f1cde3db7344d7b23dfd0 Mon Sep 17 00:00:00 2001 From: Pavel Platto Date: Thu, 17 Jul 2014 16:46:50 +0300 Subject: Fix #963. Problem: Bug was introduced because `os_open` returns `-errno` in case of an error instead of just `-1` which was returned by `mch_open`. Solution: Check return value with `< 0` instead of `== -1`. --- src/nvim/fileio.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/nvim/fileio.c') diff --git a/src/nvim/fileio.c b/src/nvim/fileio.c index 9b5df80a0c..fad8bd9581 100644 --- a/src/nvim/fileio.c +++ b/src/nvim/fileio.c @@ -4616,7 +4616,7 @@ int vim_rename(char_u *from, char_u *to) acl = mch_get_acl(from); #endif fd_in = os_open((char *)from, O_RDONLY, 0); - if (fd_in == -1) { + if (fd_in < 0) { #ifdef HAVE_ACL mch_free_acl(acl); #endif @@ -4626,7 +4626,7 @@ int vim_rename(char_u *from, char_u *to) /* Create the new file with same permissions as the original. */ fd_out = os_open((char *)to, O_CREAT|O_EXCL|O_WRONLY|O_NOFOLLOW, (int)perm); - if (fd_out == -1) { + if (fd_out < 0) { close(fd_in); #ifdef HAVE_ACL mch_free_acl(acl); -- cgit