Make feature errors per post/thread, as they're supposed to be.

This commit is contained in:
Zixaphir 2015-01-12 21:25:53 -07:00
parent a03e6d7e15
commit b5fd8738b4
3 changed files with 41 additions and 37 deletions

View File

@ -3141,17 +3141,16 @@
};
Callbacks.prototype.execute = function(nodes) {
var err, errors, name, node, _i, _j, _len, _len1, _ref;
var err, errors, feature, name, node, _i, _j, _len, _len1, _ref;
_ref = this.keys;
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
name = _ref[_i];
try {
feature = this[name];
for (_j = 0, _len1 = nodes.length; _j < _len1; _j++) {
node = nodes[_j];
if (!this[name].disconnected) {
this[name].call(node);
}
}
if (!feature.disconnected) {
try {
feature.call(node);
} catch (_error) {
err = _error;
if (!errors) {
@ -3163,6 +3162,8 @@
});
}
}
}
}
if (errors) {
return Main.handleErrors(errors);
}

View File

@ -3167,17 +3167,16 @@
};
Callbacks.prototype.execute = function(nodes) {
var err, errors, name, node, _i, _j, _len, _len1, _ref;
var err, errors, feature, name, node, _i, _j, _len, _len1, _ref;
_ref = this.keys;
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
name = _ref[_i];
try {
feature = this[name];
for (_j = 0, _len1 = nodes.length; _j < _len1; _j++) {
node = nodes[_j];
if (!this[name].disconnected) {
this[name].call(node);
}
}
if (!feature.disconnected) {
try {
feature.call(node);
} catch (_error) {
err = _error;
if (!errors) {
@ -3189,6 +3188,8 @@
});
}
}
}
}
if (errors) {
return Main.handleErrors(errors);
}

View File

@ -12,8 +12,10 @@ class Callbacks
execute: (nodes) ->
for name in @keys
feature = @[name]
for node in nodes when not feature.disconnected
try
@[name].call node for node in nodes when not @[name].disconnected
feature.call node
catch err
errors = [] unless errors
errors.push