Skip to content

Commit

Permalink
fix(gate): resolution of rejected promise
Browse files Browse the repository at this point in the history
In some cases failed promise was returned as successful
  • Loading branch information
medikoo committed May 25, 2017
1 parent 470a4db commit f6fe524
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 1 deletion.
2 changes: 1 addition & 1 deletion ext/function/gate.js
Expand Up @@ -51,7 +51,7 @@ module.exports = function (cLimit, qLimit) {
if (def) def.resolve(r);
return r.finally(decrement);
}
r = r.value;
if (!r.failed) r = r.value;
}
if (!def) return resolve(r);
def.resolve(r);
Expand Down
7 changes: 7 additions & 0 deletions test/ext/function/gate.js
Expand Up @@ -106,6 +106,13 @@ module.exports = function (t) {
dz.resolve(z);
dy.resolve(y);
dx.resolve(x);
},
"Resolution type": function (a) {
var error = new Error("Test");
gfn = t.call(function () { return deferred.reject(error); }, 1, 0);
gfn().done(a.never, function (err) {
a(err, error);
});
}
};
};

0 comments on commit f6fe524

Please sign in to comment.