aboutsummaryrefslogtreecommitdiff
path: root/src/json.c
diff options
context:
space:
mode:
authordrh <>2024-02-06 18:33:01 +0000
committerdrh <>2024-02-06 18:33:01 +0000
commit8babc0189224773fc41aed95ee603d056385908f (patch)
tree7d6f418f07fb8e4c995651a03fc4a5297f87def9 /src/json.c
parent72c7bb3e1afd4f542eb74da834ff66092f3d972c (diff)
downloadsqlite-8babc0189224773fc41aed95ee603d056385908f.tar.gz
sqlite-8babc0189224773fc41aed95ee603d056385908f.zip
Slight change to OOM handling in JSON to catch a corner case found by
dbsqlfuzz. FossilOrigin-Name: 6a2b3266c586d12b51e11fe63cda5881be9373207aa16671ab77f547830eb790
Diffstat (limited to 'src/json.c')
-rw-r--r--src/json.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/json.c b/src/json.c
index c50ded313..1a4ce3af1 100644
--- a/src/json.c
+++ b/src/json.c
@@ -3359,8 +3359,9 @@ rebuild_from_cache:
}
p->zJson = (char*)sqlite3_value_text(pArg);
p->nJson = sqlite3_value_bytes(pArg);
+ if( db->mallocFailed ) goto json_pfa_oom;
if( p->nJson==0 ) goto json_pfa_malformed;
- if( NEVER(p->zJson==0) ) goto json_pfa_oom;
+ assert( p->zJson!=0 );
if( jsonConvertTextToBlob(p, (flgs & JSON_KEEPERROR) ? 0 : ctx) ){
if( flgs & JSON_KEEPERROR ){
p->nErr = 1;