From: dan Date: Sat, 2 Feb 2019 13:47:25 +0000 (+0000) Subject: Fix a buffer overread in fts5 debugging scalar function fts5_decode(). X-Git-Tag: version-3.27.0~34 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8f5b14a5c25d7ee74d9b97121df54fbe987b2750;p=thirdparty%2Fsqlite.git Fix a buffer overread in fts5 debugging scalar function fts5_decode(). FossilOrigin-Name: 54f2399fb2a626602d405c857297f2da833f9f048cbc478f9110bed2e9bda299 --- diff --git a/ext/fts5/fts5_index.c b/ext/fts5/fts5_index.c index 202f9eb6a0..5e02bd3d02 100644 --- a/ext/fts5/fts5_index.c +++ b/ext/fts5/fts5_index.c @@ -6427,6 +6427,10 @@ static void fts5DecodeFunction( /* Decode any more doclist data that appears on the page before the ** first term. */ nDoclist = (iTermOff ? iTermOff : szLeaf) - iOff; + if( nDoclist+iOff>n ){ + rc = FTS5_CORRUPT; + goto decode_out; + } fts5DecodeDoclist(&rc, &s, &a[iOff], nDoclist); while( iPgidxOff