Fixed bug: waitsFor() hangs forever if latch function never returns true.

This commit is contained in:
Christian Williams
2010-08-25 17:16:19 -07:00
parent 254ebb8a03
commit 55149310c3
4 changed files with 11 additions and 4 deletions
+6 -1
View File
@@ -4,6 +4,7 @@ jasmine.Queue = function(env) {
this.running = false;
this.index = 0;
this.offset = 0;
this.abort = false;
};
jasmine.Queue.prototype.addBefore = function(block) {
@@ -38,7 +39,7 @@ jasmine.Queue.prototype.next_ = function() {
while (goAgain) {
goAgain = false;
if (self.index < self.blocks.length) {
if (self.index < self.blocks.length && !this.abort) {
var calledSynchronously = true;
var completedSynchronously = false;
@@ -48,6 +49,10 @@ jasmine.Queue.prototype.next_ = function() {
return;
}
if (self.blocks[self.index].abort) {
self.abort = true;
}
self.offset = 0;
self.index++;