Avoid creating functions inside loop, properly terminates now
This commit is contained in:
parent
7f0b5772fa
commit
157fcec25e
20
lib/robot.js
20
lib/robot.js
|
@ -316,26 +316,22 @@ Robot.prototype.startDevices = function(callback) {
|
|||
Robot.prototype.halt = function(callback) {
|
||||
callback = callback || function() {};
|
||||
|
||||
var fns = [];
|
||||
|
||||
for (var d in this.devices) {
|
||||
var fns = Object.keys(this.devices).map(function(d) {
|
||||
var device = this.devices[d];
|
||||
|
||||
fns.push(function(callback) {
|
||||
return function(callback) {
|
||||
device.halt.call(device, callback);
|
||||
});
|
||||
}
|
||||
};
|
||||
}.bind(this));
|
||||
|
||||
Async.parallel(fns, function() {
|
||||
var fns = [];
|
||||
|
||||
for (var c in this.connections) {
|
||||
var fns = Object.keys(this.connections).map(function(c) {
|
||||
var connection = this.connections[c];
|
||||
|
||||
fns.push(function(callback) {
|
||||
return function(callback) {
|
||||
connection.disconnect.call(connection, callback);
|
||||
});
|
||||
}
|
||||
};
|
||||
}.bind(this));
|
||||
|
||||
Async.parallel(fns, callback);
|
||||
}.bind(this));
|
||||
|
|
Loading…
Reference in New Issue