Skip to content

Commit 0306e6c

Browse files
committed
Re-use the getArrayBuffer helper from src/display/fetch_stream.js with PDFNodeStreamReader and PDFNodeStreamRangeReader
Given that the Node.js code uses standard `ReadableStream`s now, see PR 20594, it can use the same `getArrayBuffer` as the Fetch API implementation. Also, change the `getArrayBuffer` fallback case to an Error (rather than a warning) since that should never actually happen.
1 parent 916b58a commit 0306e6c

2 files changed

Lines changed: 5 additions & 16 deletions

File tree

src/display/fetch_stream.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* limitations under the License.
1414
*/
1515

16-
import { AbortException, assert, warn } from "../shared/util.js";
16+
import { AbortException, assert } from "../shared/util.js";
1717
import {
1818
BasePDFStream,
1919
BasePDFStreamRangeReader,
@@ -58,8 +58,7 @@ function getArrayBuffer(val) {
5858
if (val instanceof ArrayBuffer) {
5959
return val;
6060
}
61-
warn(`getArrayBuffer - unexpected data format: ${val}`);
62-
return new Uint8Array(val).buffer;
61+
throw new Error(`getArrayBuffer - unexpected data: ${val}`);
6362
}
6463

6564
class PDFFetchStream extends BasePDFStream {
@@ -194,4 +193,4 @@ class PDFFetchStreamRangeReader extends BasePDFStreamRangeReader {
194193
}
195194
}
196195

197-
export { PDFFetchStream };
196+
export { getArrayBuffer, PDFFetchStream };

src/display/node_stream.js

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,14 @@
1414
*/
1515
/* globals process */
1616

17-
import { AbortException, assert, warn } from "../shared/util.js";
17+
import { AbortException, assert } from "../shared/util.js";
1818
import {
1919
BasePDFStream,
2020
BasePDFStreamRangeReader,
2121
BasePDFStreamReader,
2222
} from "../shared/base_pdf_stream.js";
2323
import { createResponseError } from "./network_utils.js";
24+
import { getArrayBuffer } from "./fetch_stream.js";
2425

2526
if (typeof PDFJSDev !== "undefined" && PDFJSDev.test("MOZCENTRAL")) {
2627
throw new Error(
@@ -44,17 +45,6 @@ function getReadableStream(readStream) {
4445
return polyfill.makeDefaultReadableStreamFromNodeReadable(readStream);
4546
}
4647

47-
function getArrayBuffer(val) {
48-
if (val instanceof Uint8Array) {
49-
return val.buffer;
50-
}
51-
if (val instanceof ArrayBuffer) {
52-
return val;
53-
}
54-
warn(`getArrayBuffer - unexpected data format: ${val}`);
55-
return new Uint8Array(val).buffer;
56-
}
57-
5848
class PDFNodeStream extends BasePDFStream {
5949
constructor(source) {
6050
super(source, PDFNodeStreamReader, PDFNodeStreamRangeReader);

0 commit comments

Comments
 (0)