|
@@ -80,30 +80,22 @@ function asynchronize({s, chunkEventName="message", endEventName="close"}){
|
|
|
})
|
|
|
|
|
|
while (!end){
|
|
|
- let p = openPromise()
|
|
|
+ let p;
|
|
|
+ promises[promiseCount] = p = openPromise();
|
|
|
|
|
|
if (promiseCount in chunks){ //if chunk for this promise already exists
|
|
|
p.resolve(chunks[promiseCount]) //resolve it
|
|
|
//and clear this chunk and promise from queues
|
|
|
clear(promiseCount)
|
|
|
}
|
|
|
- else {
|
|
|
- //otherwise save it in buffer
|
|
|
- //for later chunk or reject if end of stream
|
|
|
- promises[promiseCount] = p;
|
|
|
- promiseCount++
|
|
|
- }
|
|
|
|
|
|
+ promiseCount++;
|
|
|
yield p; //yield promise outside
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
/**
|
|
|
* broadcast sends same message to socket list
|
|
|
*
|