From add08049434efb5486828f4ec98415a5dce8a4b5 Mon Sep 17 00:00:00 2001 From: dan Date: Tue, 26 May 2015 17:29:48 +0000 Subject: [PATCH] Avoid using a zero-sized array within a struct in fts3 code. FossilOrigin-Name: b05cae36cedd98d59813e637f328a52eee7ef0d2 --- ext/fts3/fts3_snippet.c | 4 ++-- manifest | 14 +++++++------- manifest.uuid | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/ext/fts3/fts3_snippet.c b/ext/fts3/fts3_snippet.c index d3b6a78a34..a0771c0b30 100644 --- a/ext/fts3/fts3_snippet.c +++ b/ext/fts3/fts3_snippet.c @@ -104,7 +104,7 @@ struct MatchinfoBuffer { int nElem; int bGlobal; /* Set if global data is loaded */ char *zMatchinfo; - u32 aMatchinfo[0]; + u32 aMatchinfo[1]; }; @@ -130,7 +130,7 @@ struct StrBuffer { */ static MatchinfoBuffer *fts3MIBufferNew(int nElem, const char *zMatchinfo){ MatchinfoBuffer *pRet; - int nByte = sizeof(u32) * (2*nElem + 2) + sizeof(MatchinfoBuffer); + int nByte = sizeof(u32) * (2*nElem + 1) + sizeof(MatchinfoBuffer); int nStr = (int)strlen(zMatchinfo); pRet = sqlite3_malloc(nByte + nStr+1); diff --git a/manifest b/manifest index 3e6ccd7e21..02d21de47c 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\sanother\sbug\sin\sthe\sin-memory\sVFS\sfor\sfuzzcheck. -D 2015-05-26T16:12:45.409 +C Avoid\susing\sa\szero-sized\sarray\swithin\sa\sstruct\sin\sfts3\scode. +D 2015-05-26T17:29:48.708 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 69b596e4be75a16f4e55587f29db66497b207fad F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -87,7 +87,7 @@ F ext/fts3/fts3_hash.c 29b986e43f4e9dd40110eafa377dc0d63c422c60 F ext/fts3/fts3_hash.h 39cf6874dc239d6b4e30479b1975fe5b22a3caaf F ext/fts3/fts3_icu.c e319e108661147bcca8dd511cd562f33a1ba81b5 F ext/fts3/fts3_porter.c 3565faf04b626cddf85f03825e86056a4562c009 -F ext/fts3/fts3_snippet.c 39a018b7796d6408883f059169b8cca1da1ec9de +F ext/fts3/fts3_snippet.c 68ae118b0f834ea53d2b89e4087fc0f0b8c4ee4e F ext/fts3/fts3_term.c 88c55a6fa1a51ab494e33dced0401a6c28791fd7 F ext/fts3/fts3_test.c 8a3a78c4458b2d7c631fcf4b152a5cd656fa7038 F ext/fts3/fts3_tokenize_vtab.c a27593ab19657166f6fa5ec073b678cc29a75860 @@ -1279,7 +1279,7 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P 22a14663782312fa7f4f18545509ef4b27e9b8c1 -R c430c5139c8b2fca96f4c8173180fc85 -U drh -Z 9f3e869d4bf304fb4f5a5214d33d6109 +P 16878a314baceb14632a3ec43187fcc020089a76 +R 0ea0b6b454cde9ea66e3b1a15b6a45e8 +U dan +Z ab9bd6ec479754258f8cc2a7ff20886a diff --git a/manifest.uuid b/manifest.uuid index 288c1bd6b1..001f5354cd 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -16878a314baceb14632a3ec43187fcc020089a76 \ No newline at end of file +b05cae36cedd98d59813e637f328a52eee7ef0d2 \ No newline at end of file