diff --git a/src/reader/common/text/tokenizer.ts b/src/reader/common/text/tokenizer.ts
index 5a5fc2b82f5c7dad4500db95de84e155a144f34d..79cabe1005658450320c7ecb8285edef229c9fe7 100644
--- a/src/reader/common/text/tokenizer.ts
+++ b/src/reader/common/text/tokenizer.ts
@@ -120,7 +120,7 @@ export function trim(state: State, start: number, end: number) {
     let s = start, e = end - 1;
 
     let c = data.charCodeAt(s);
-    while (c === 9 || c === 32) c = data.charCodeAt(++s);
+    while ((c === 9 || c === 32) && s <= e) c = data.charCodeAt(++s);
     c = data.charCodeAt(e);
     while ((c === 9 || c === 32) && e >= s) c = data.charCodeAt(--e);