diff options
author | Ben Noordhuis <info@bnoordhuis.nl> | 2012-10-06 23:04:30 +0200 |
---|---|---|
committer | Ben Noordhuis <info@bnoordhuis.nl> | 2012-10-07 00:44:38 +0200 |
commit | ee77a6a953c65ff1fddf4017496387c42dd84d63 (patch) | |
tree | e87fedec086f8411ac52027c6a7570f60e30bd1d /deps/uv/src/unix/fsevents.c | |
parent | 836a06fc4f4920d5e9675763290c97aa4e7288fe (diff) | |
download | android-node-v8-ee77a6a953c65ff1fddf4017496387c42dd84d63.tar.gz android-node-v8-ee77a6a953c65ff1fddf4017496387c42dd84d63.tar.bz2 android-node-v8-ee77a6a953c65ff1fddf4017496387c42dd84d63.zip |
deps: upgrade libuv to b9ed1a6
Diffstat (limited to 'deps/uv/src/unix/fsevents.c')
-rw-r--r-- | deps/uv/src/unix/fsevents.c | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/deps/uv/src/unix/fsevents.c b/deps/uv/src/unix/fsevents.c index 17dd11afa8..ac58d4f18e 100644 --- a/deps/uv/src/unix/fsevents.c +++ b/deps/uv/src/unix/fsevents.c @@ -66,14 +66,9 @@ void uv__fsevents_cb(uv_async_t* cb, int status) { handle = cb->data; UV__FSEVENTS_WALK(handle, { - if (handle->fd != -1) { -#ifdef MAC_OS_X_VERSION_10_7 - handle->cb(handle, event->path, event->events, 0); -#else - handle->cb(handle, NULL, event->events, 0); -#endif /* MAC_OS_X_VERSION_10_7 */ - } - }) + if (handle->fd != -1) + handle->cb(handle, event->path[0] ? event->path : NULL, event->events, 0); + }); if ((handle->flags & (UV_CLOSING | UV_CLOSED)) == 0 && handle->fd == -1) uv__fsevents_close(handle); @@ -94,6 +89,17 @@ void uv__fsevents_event_cb(ConstFSEventStreamRef streamRef, uv_fs_event_t* handle; uv__fsevents_event_t* event; ngx_queue_t add_list; + int kFSEventsModified; + int kFSEventsRenamed; + + kFSEventsModified = kFSEventStreamEventFlagItemFinderInfoMod | + kFSEventStreamEventFlagItemModified | + kFSEventStreamEventFlagItemInodeMetaMod | + kFSEventStreamEventFlagItemChangeOwner | + kFSEventStreamEventFlagItemXattrMod; + kFSEventsRenamed = kFSEventStreamEventFlagItemCreated | + kFSEventStreamEventFlagItemRemoved | + kFSEventStreamEventFlagItemRenamed; handle = info; paths = eventPaths; @@ -151,7 +157,8 @@ void uv__fsevents_event_cb(ConstFSEventStreamRef streamRef, memcpy(event->path, path, len + 1); - if (eventFlags[i] & kFSEventStreamEventFlagItemModified) + if ((eventFlags[i] & kFSEventsModified) != 0 && + (eventFlags[i] & kFSEventsRenamed) == 0) event->events = UV_CHANGE; else event->events = UV_RENAME; |