Skip to content

Commit

Permalink
Fixes #364
Browse files Browse the repository at this point in the history
  • Loading branch information
petkaantonov committed Oct 25, 2014
1 parent d9e1248 commit bf9f64f
Show file tree
Hide file tree
Showing 2 changed files with 41 additions and 0 deletions.
1 change: 1 addition & 0 deletions src/promise.js
Original file line number Diff line number Diff line change
Expand Up @@ -682,6 +682,7 @@ function Promise$_settlePromiseFromHandler(
handler.call(receiver, value, promise);
return;
}
if (promise.isResolved()) return;
var x = this._callHandler(handler, receiver, promise, value);
if (promise._isFollowing()) return;

Expand Down
40 changes: 40 additions & 0 deletions test/mocha/github-3.6.4.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
"use strict";

var assert = require("assert");
var Promise = require("../../js/debug/bluebird.js");

function defer() {
var resolve, reject;
var promise = new Promise(function() {
resolve = arguments[0];
reject = arguments[1];
});
return {
resolve: resolve,
reject: reject,
promise: promise
};
}


describe("github-364", function() {
specify("resolve between thens", function(done) {
var calls = 0;
var def = defer();

def.promise.then(function() {
calls++
});
def.resolve();
def.promise.then(function() {
calls++
}).then(function() {
calls++
});

Promise.delay(50).then(function() {
assert.equal(calls, 3);
done();
});
});
});

0 comments on commit bf9f64f

Please sign in to comment.