(action, rejected, originalError)
| 1514 | } |
| 1515 | |
| 1516 | function shutdownWithAnAction(action, rejected, originalError) { |
| 1517 | if (shuttingDown) return; |
| 1518 | shuttingDown = true; |
| 1519 | if (dest[kState].state === 'writable' && |
| 1520 | !writableStreamCloseQueuedOrInFlight(dest)) { |
| 1521 | PromisePrototypeThen( |
| 1522 | waitForCurrentWrite(), |
| 1523 | complete, |
| 1524 | (error) => finalize(true, error)); |
| 1525 | return; |
| 1526 | } |
| 1527 | complete(); |
| 1528 | |
| 1529 | function complete() { |
| 1530 | PromisePrototypeThen( |
| 1531 | action(), |
| 1532 | () => finalize(rejected, originalError), |
| 1533 | (error) => finalize(true, error)); |
| 1534 | } |
| 1535 | } |
| 1536 | |
| 1537 | function shutdown(rejected, error) { |
| 1538 | if (shuttingDown) return; |
no test coverage detected