mirror of
https://github.com/zen-browser/pdf.js.git
synced 2025-07-07 17:05:38 +02:00
33 lines
671 B
JavaScript
33 lines
671 B
JavaScript
import {
|
|
JpxError,
|
|
JpxImage,
|
|
setVerbosityLevel,
|
|
VerbosityLevel,
|
|
} from "../../build/image_decoders/pdf.image_decoders.mjs";
|
|
|
|
// Avoid unnecessary console "spam", by ignoring `info`/`warn` calls.
|
|
setVerbosityLevel(VerbosityLevel.ERRORS);
|
|
|
|
const ignored = ["Cannot read properties"];
|
|
|
|
function ignoredError(error) {
|
|
if (error instanceof JpxError) {
|
|
return true;
|
|
}
|
|
return ignored.some(message => error.message.includes(message));
|
|
}
|
|
|
|
/**
|
|
* @param {Buffer} data
|
|
*/
|
|
function fuzz(data) {
|
|
try {
|
|
JpxImage.decode(new Uint8Array(data));
|
|
} catch (error) {
|
|
if (error.message && !ignoredError(error)) {
|
|
throw error;
|
|
}
|
|
}
|
|
}
|
|
|
|
export { fuzz };
|