summaryrefslogtreecommitdiffstats
path: root/Utilities/cmlibuv/src/uv-common.c
diff options
context:
space:
mode:
Diffstat (limited to 'Utilities/cmlibuv/src/uv-common.c')
-rw-r--r--Utilities/cmlibuv/src/uv-common.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/Utilities/cmlibuv/src/uv-common.c b/Utilities/cmlibuv/src/uv-common.c
index 46d9546..bc7d137 100644
--- a/Utilities/cmlibuv/src/uv-common.c
+++ b/Utilities/cmlibuv/src/uv-common.c
@@ -512,8 +512,18 @@ void uv__fs_scandir_cleanup(uv_fs_t* req) {
int uv_fs_scandir_next(uv_fs_t* req, uv_dirent_t* ent) {
uv__dirent_t** dents;
uv__dirent_t* dent;
+ unsigned int* nbufs;
- unsigned int* nbufs = uv__get_nbufs(req);
+ /* Check to see if req passed */
+ if (req->result < 0)
+ return req->result;
+
+ /* Ptr will be null if req was canceled or no files found */
+ if (!req->ptr)
+ return UV_EOF;
+
+ nbufs = uv__get_nbufs(req);
+ assert(nbufs);
dents = req->ptr;