aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordrh <>2023-12-11 20:19:10 +0000
committerdrh <>2023-12-11 20:19:10 +0000
commit001caa714fc29ca13aa86605aa2c18a47f875430 (patch)
treefb07d3361eb42d0a5b42e70aa72aaa9c1c94838c /src
parent74456595595d753a6b6f3f42a0505f347064d129 (diff)
downloadsqlite-001caa714fc29ca13aa86605aa2c18a47f875430.tar.gz
sqlite-001caa714fc29ca13aa86605aa2c18a47f875430.zip
json_valid(*,8) allows minus-signs on hexadecimal literals.
FossilOrigin-Name: c0d7f4520d839a268b3fd2474d0897a9832aa608bd6238b3e287fabecf07a350
Diffstat (limited to 'src')
-rw-r--r--src/json.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/json.c b/src/json.c
index 407705c01..b73598773 100644
--- a/src/json.c
+++ b/src/json.c
@@ -1280,6 +1280,10 @@ static u32 jsonbValidityCheck(JsonParse *pParse, u32 i, u32 iEnd, u32 iDepth){
case JSONB_INT5: {
if( sz<3 ) return i+1;
j = i+n;
+ if( z[j]=='-' ){
+ if( sz<4 ) return i+1;
+ j++;
+ }
if( z[j]!='0' ) return j+1;
if( z[j+1]!='x' && z[j+1]!='X' ) return j+2;
j += 2;