summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorBrian White <mscdex@mscdex.net>2016-04-15 01:25:21 -0400
committerJames M Snell <jasnell@gmail.com>2016-04-18 14:41:18 -0700
commit58561cf6a8ce6ac907973c3813cb52134ec8d4c2 (patch)
treeb6426ca103ba0b1e4220f16366bf7b5e225fdc76 /tools
parentaf4a380d400129560844eecc3bbd1208af19dfe7 (diff)
downloadandroid-node-v8-58561cf6a8ce6ac907973c3813cb52134ec8d4c2.tar.gz
android-node-v8-58561cf6a8ce6ac907973c3813cb52134ec8d4c2.tar.bz2
android-node-v8-58561cf6a8ce6ac907973c3813cb52134ec8d4c2.zip
tools: move message listener to worker objects
Moving the `message` event listener from the cluster object to each worker object allows easier backporting of the recent jslint changes since v5.x and older do not have v6.x's `worker` parameter in the cluster object's `message` event. PR-URL: https://github.com/nodejs/node/pull/6212 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com>
Diffstat (limited to 'tools')
-rw-r--r--tools/jslint.js30
1 files changed, 15 insertions, 15 deletions
diff --git a/tools/jslint.js b/tools/jslint.js
index 7cd2fd7bcb..754ac1a98c 100644
--- a/tools/jslint.js
+++ b/tools/jslint.js
@@ -125,20 +125,6 @@ if (cluster.isMaster) {
sendWork(worker);
});
- cluster.on('message', function(worker, results) {
- if (typeof results !== 'number') {
- // The worker sent us results that are not all successes
- if (!workerConfig.sendAll)
- failures += results.length;
- outFn(formatter(results) + '\r\n');
- printProgress();
- } else {
- successes += results;
- }
- // Try to give the worker more work to do
- sendWork(worker);
- });
-
process.on('exit', function() {
if (showProgress) {
curPath = 'Done';
@@ -149,7 +135,21 @@ if (cluster.isMaster) {
});
for (i = 0; i < numCPUs; ++i)
- cluster.fork();
+ cluster.fork().on('message', onWorkerMessage);
+
+ function onWorkerMessage(results) {
+ if (typeof results !== 'number') {
+ // The worker sent us results that are not all successes
+ if (!workerConfig.sendAll)
+ failures += results.length;
+ outFn(formatter(results) + '\r\n');
+ printProgress();
+ } else {
+ successes += results;
+ }
+ // Try to give the worker more work to do
+ sendWork(this);
+ }
function sendWork(worker) {
if (!files || !files.length) {