Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/npm/cli.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorisaacs <i@izs.me>2012-03-28 00:50:59 +0400
committerisaacs <i@izs.me>2012-03-28 00:50:59 +0400
commitd3eb770edf8d2cf0376b4f526a4d4a8da5eb387f (patch)
tree003147e359658f1b9d7ca136ba07c8d099bb89d6 /node_modules/fstream
parent4ca6aa67c2ef60cec079720b1251cebdc63b29e9 (diff)
Update fstream
Diffstat (limited to 'node_modules/fstream')
-rw-r--r--node_modules/fstream/lib/dir-reader.js6
-rw-r--r--node_modules/fstream/lib/reader.js26
-rw-r--r--node_modules/fstream/package.json6
3 files changed, 25 insertions, 13 deletions
diff --git a/node_modules/fstream/lib/dir-reader.js b/node_modules/fstream/lib/dir-reader.js
index ef769dd33..6a418c0bc 100644
--- a/node_modules/fstream/lib/dir-reader.js
+++ b/node_modules/fstream/lib/dir-reader.js
@@ -130,7 +130,11 @@ DirReader.prototype._read = function () {
})
entry.on("stat", function (props) {
- me.emit("entryStat", entry, props)
+ me.emit("_entryStat", entry, props)
+ if (entry._aborted) return
+ if (entry._paused) entry.once("resume", function () {
+ me.emit("entryStat", entry, props)
+ })
})
entry.on("ready", function EMITCHILD () {
diff --git a/node_modules/fstream/lib/reader.js b/node_modules/fstream/lib/reader.js
index 16f0d1ea0..e4e1b482c 100644
--- a/node_modules/fstream/lib/reader.js
+++ b/node_modules/fstream/lib/reader.js
@@ -200,17 +200,25 @@ Reader.prototype._stat = function (currentStat) {
}
// last chance to abort or disown before the flow starts!
- me.emit("stat", props)
- if (me._aborted) {
- me.emit("end")
- me.emit("close")
- return
- }
+ var events = ["_stat", "stat", "ready"]
+ var e = 0
+ ;(function go () {
+ if (me._aborted) {
+ me.emit("end")
+ me.emit("close")
+ return
+ }
- me.emit("ready", props)
+ if (me._paused) {
+ me.once("resume", go)
+ return
+ }
- // if it's a directory, then we'll be emitting "entry" events.
- if (!me._paused) me._read()
+ var ev = events[e ++]
+ if (!ev) return me._read()
+ me.emit(ev, props)
+ go()
+ })()
}
}
diff --git a/node_modules/fstream/package.json b/node_modules/fstream/package.json
index 425308ead..c503ac00d 100644
--- a/node_modules/fstream/package.json
+++ b/node_modules/fstream/package.json
@@ -6,7 +6,7 @@
},
"name": "fstream",
"description": "Advanced file system stream things",
- "version": "0.1.16",
+ "version": "0.1.17",
"repository": {
"type": "git",
"url": "git://github.com/isaacs/fstream.git"
@@ -32,11 +32,11 @@
"name": "isaacs",
"email": "i@izs.me"
},
- "_id": "fstream@0.1.16",
+ "_id": "fstream@0.1.17",
"optionalDependencies": {},
"_engineSupported": true,
"_npmVersion": "1.1.12",
"_nodeVersion": "v0.7.7-pre",
"_defaultsLoaded": true,
- "_from": "fstream@~0.1.15"
+ "_from": "fstream@~0.1.16"
}