summaryrefslogtreecommitdiff
path: root/deps/uv/src/unix/fs.c
diff options
context:
space:
mode:
authorSaúl Ibarra Corretgé <saghul@gmail.com>2014-10-21 00:45:30 +0200
committerTrevor Norris <trev.norris@gmail.com>2014-11-05 16:49:57 -0800
commitce112c27c636ba17129d6061f8db636a80faeb48 (patch)
tree50e2a8185185b31573fe57b2d33cbf7dfa7529bc /deps/uv/src/unix/fs.c
parent28ae70ebad8debd8aa7b521a693aa3de89ad84d6 (diff)
downloadandroid-node-v8-ce112c27c636ba17129d6061f8db636a80faeb48.tar.gz
android-node-v8-ce112c27c636ba17129d6061f8db636a80faeb48.tar.bz2
android-node-v8-ce112c27c636ba17129d6061f8db636a80faeb48.zip
deps: update uv to v1.0.0-rc2
PR-URL: https://github.com/joyent/node/pull/8566 Reviewed-by: Fedor Indutny <fedor@indutny.com> Reviewed-by: Trevor Norris <trev.norris@gmail.com>
Diffstat (limited to 'deps/uv/src/unix/fs.c')
-rw-r--r--deps/uv/src/unix/fs.c32
1 files changed, 22 insertions, 10 deletions
diff --git a/deps/uv/src/unix/fs.c b/deps/uv/src/unix/fs.c
index 9bb7baf774..65fd01230b 100644
--- a/deps/uv/src/unix/fs.c
+++ b/deps/uv/src/unix/fs.c
@@ -295,22 +295,21 @@ done:
#if defined(__OpenBSD__) || (defined(__APPLE__) && !defined(MAC_OS_X_VERSION_10_8))
-static int uv__fs_readdir_filter(uv__dirent_t* dent) {
+static int uv__fs_scandir_filter(uv__dirent_t* dent) {
#else
-static int uv__fs_readdir_filter(const uv__dirent_t* dent) {
+static int uv__fs_scandir_filter(const uv__dirent_t* dent) {
#endif
return strcmp(dent->d_name, ".") != 0 && strcmp(dent->d_name, "..") != 0;
}
-/* This should have been called uv__fs_scandir(). */
-static ssize_t uv__fs_readdir(uv_fs_t* req) {
+static ssize_t uv__fs_scandir(uv_fs_t* req) {
uv__dirent_t **dents;
int saved_errno;
int n;
dents = NULL;
- n = scandir(req->path, &dents, uv__fs_readdir_filter, alphasort);
+ n = scandir(req->path, &dents, uv__fs_scandir_filter, alphasort);
/* NOTE: We will use nbufs as an index field */
req->nbufs = 0;
@@ -764,6 +763,7 @@ static void uv__fs_work(struct uv__work* w) {
break;
switch (req->fs_type) {
+ X(ACCESS, access(req->path, req->flags));
X(CHMOD, chmod(req->path, req->mode));
X(CHOWN, chown(req->path, req->uid, req->gid));
X(CLOSE, close(req->file));
@@ -779,7 +779,7 @@ static void uv__fs_work(struct uv__work* w) {
X(MKDIR, mkdir(req->path, req->mode));
X(MKDTEMP, uv__fs_mkdtemp(req));
X(READ, uv__fs_read(req));
- X(READDIR, uv__fs_readdir(req));
+ X(SCANDIR, uv__fs_scandir(req));
X(READLINK, uv__fs_readlink(req));
X(RENAME, rename(req->path, req->new_path));
X(RMDIR, rmdir(req->path));
@@ -854,6 +854,18 @@ static void uv__fs_done(struct uv__work* w, int status) {
}
+int uv_fs_access(uv_loop_t* loop,
+ uv_fs_t* req,
+ const char* path,
+ int flags,
+ uv_fs_cb cb) {
+ INIT(ACCESS);
+ PATH;
+ req->flags = flags;
+ POST;
+}
+
+
int uv_fs_chmod(uv_loop_t* loop,
uv_fs_t* req,
const char* path,
@@ -1040,12 +1052,12 @@ int uv_fs_read(uv_loop_t* loop, uv_fs_t* req,
}
-int uv_fs_readdir(uv_loop_t* loop,
+int uv_fs_scandir(uv_loop_t* loop,
uv_fs_t* req,
const char* path,
int flags,
uv_fs_cb cb) {
- INIT(READDIR);
+ INIT(SCANDIR);
PATH;
req->flags = flags;
POST;
@@ -1167,8 +1179,8 @@ void uv_fs_req_cleanup(uv_fs_t* req) {
req->path = NULL;
req->new_path = NULL;
- if (req->fs_type == UV_FS_READDIR && req->ptr != NULL)
- uv__fs_readdir_cleanup(req);
+ if (req->fs_type == UV_FS_SCANDIR && req->ptr != NULL)
+ uv__fs_scandir_cleanup(req);
if (req->ptr != &req->statbuf)
free(req->ptr);