aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/os/fs.c9
-rw-r--r--src/testdir/Makefile2
2 files changed, 8 insertions, 3 deletions
diff --git a/src/os/fs.c b/src/os/fs.c
index b55c132027..6ae48ab269 100644
--- a/src/os/fs.c
+++ b/src/os/fs.c
@@ -175,11 +175,16 @@ int mch_is_absolute_path(char_u *fname)
int mch_isdir(char_u *name)
{
uv_fs_t request;
- if (0 != uv_fs_stat(uv_default_loop(), &request, (const char*) name, NULL)) {
+ int result = uv_fs_stat(uv_default_loop(), &request, (const char*) name, NULL);
+ uint64_t mode = request.statbuf.st_mode;
+
+ uv_fs_req_cleanup(&request);
+
+ if (0 != result) {
return FALSE;
}
- if (!S_ISDIR(request.statbuf.st_mode)) {
+ if (!S_ISDIR(mode)) {
return FALSE;
}
diff --git a/src/testdir/Makefile b/src/testdir/Makefile
index f096cb5b70..be4fc279ab 100644
--- a/src/testdir/Makefile
+++ b/src/testdir/Makefile
@@ -28,7 +28,7 @@ SCRIPTS := test1.out test2.out test3.out test4.out test5.out test6.out \
SCRIPTS_GUI := test16.out
ifdef VALGRIND_CHECK
-VALGRIND = valgrind --suppressions=../../.valgrind.supp --leak-check=full --error-exitcode=111 --log-file=valgrind.$*
+VALGRIND = valgrind --suppressions=../../.valgrind.supp --leak-check=full --error-exitcode=123 --log-file=valgrind.$*
endif
ifdef TESTNUM