diff --git a/lib/types/utils.ts b/lib/types/utils.ts index 4a6496c3..5ba040fa 100644 --- a/lib/types/utils.ts +++ b/lib/types/utils.ts @@ -79,6 +79,8 @@ export function findBox(input: Uint8Array, boxName: string, offset: number) { const box = readBox(input, offset) if (!box) break if (box.name === boxName) return box - offset += box.size + // Fix the infinite loop by ensuring offset always increases + // If box.size is 0, advance by at least 8 bytes (the size of the box header) + offset += box.size > 0 ? box.size : 8 } } diff --git a/package.json b/package.json index 6c7ef2f3..c241dd15 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "image-size", - "version": "1.2.0", + "version": "1.2.1", "description": "get dimensions of any image file", "main": "dist/index.js", "types": "dist/index.d.ts",