diff --git a/src/frame.ts b/src/frame.ts index 5e0457a..7443866 100644 --- a/src/frame.ts +++ b/src/frame.ts @@ -423,7 +423,9 @@ export class Frame implements IFrame { offset += 7; } - if (this.payload.length < offset + 19) return { payload: null }; + // Need at least enough characters for compressed position (13) or + // uncompressed (19). Allow parsing to continue if compressed-length is present. + if (this.payload.length < offset + 13) return { payload: null }; // Check if compressed format const isCompressed = this.isCompressedPosition(