diff --git a/src/core/chunked_stream.js b/src/core/chunked_stream.js index 642323fae223a..3b712c15a8060 100644 --- a/src/core/chunked_stream.js +++ b/src/core/chunked_stream.js @@ -301,7 +301,11 @@ class ChunkedStreamManager { const readChunk = ({ value, done }) => { try { if (done) { - resolve(arrayBuffersToBytes(chunks)); + resolve( + chunks.length > 0 || !this.disableAutoFetch + ? arrayBuffersToBytes(chunks) + : null + ); chunks = null; return; } @@ -322,6 +326,11 @@ class ChunkedStreamManager { if (this.aborted) { return; // Ignoring any data after abort. } + if (!data) { + // The range request wasn't dispatched, see the "GetRangeReader" handler + // in the `src/display/api.js` file. + return; + } this.onReceiveData({ chunk: data.buffer, begin }); }); }