make WeaselJson_OVERFLOW a terminal state like WeaselJson_REJECT #53

Merged
andrew merged 2 commits from weaselbot/weaseljson:weaselbot/issue-52 into main 2026-07-13 20:58:15 +00:00
Showing only changes of commit 42d37d1fd7 - Show all commits
+2 -2
View File
1
@@ -1085,7 +1085,7 @@ inline WeaselJsonStatus Parser3::parse(char *buf, int len) {
// range. // range.
ContinuationStatus status = ContinuationStatus status =
symbolTables.continuations[top()](this, buf, buf + len); symbolTables.continuations[top()](this, buf, buf + len);
if (status == WeaselJson_REJECT || status == WeaselJson_OVERFLOW) { if (status > WeaselJson_AGAIN) {
this->terminalStatus = WeaselJsonStatus(status); this->terminalStatus = WeaselJsonStatus(status);
} }
return WeaselJsonStatus(status); return WeaselJsonStatus(status);
@@ -1095,7 +1095,7 @@ inline WeaselJsonStatus Parser3::parse(char *buf, int len) {
while ((result = symbolTables.continuations[top()]( while ((result = symbolTables.continuations[top()](
this, stashBufForTrampoline, buf + len)) == kBounce) this, stashBufForTrampoline, buf + len)) == kBounce)
; ;
if (result == WeaselJson_REJECT || result == WeaselJson_OVERFLOW) { if (result > WeaselJson_AGAIN) {
this->terminalStatus = WeaselJsonStatus(result); this->terminalStatus = WeaselJsonStatus(result);
} }
return WeaselJsonStatus(result); return WeaselJsonStatus(result);