Skip to content

Commit 8ae3a63

Browse files
committed
More robust semaphores
Fixes #181
1 parent 2b9ce0c commit 8ae3a63

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

vm.primitives.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1914,11 +1914,11 @@ Object.subclass('Squeak.Primitives',
19141914
this.semaphoresToSignal.push(semaIndex);
19151915
},
19161916
signalExternalSemaphores: function() {
1917-
var semaphores = this.vm.specialObjects[Squeak.splOb_ExternalObjectsArray].pointers,
1917+
var semaphores = this.vm.specialObjects[Squeak.splOb_ExternalObjectsArray].pointers || [],
19181918
semaClass = this.vm.specialObjects[Squeak.splOb_ClassSemaphore];
19191919
while (this.semaphoresToSignal.length) {
19201920
var semaIndex = this.semaphoresToSignal.shift(),
1921-
sema = semaphores[semaIndex - 1];
1921+
sema = semaphores[semaIndex - 1] || this.vm.nilObj;
19221922
if (sema.sqClass == semaClass)
19231923
this.synchronousSignal(sema);
19241924
}

0 commit comments

Comments
 (0)