From: dan Date: Fri, 26 Nov 2010 16:31:43 +0000 (+0000) Subject: Fix an uninitialized variable in fts3.c. X-Git-Tag: version-3.7.4~35 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=102b7de0e9942a4289fac62ae6a377151351204d;p=thirdparty%2Fsqlite.git Fix an uninitialized variable in fts3.c. FossilOrigin-Name: 3c3d076b42da36cd5413749ec022d0349325edfa --- diff --git a/ext/fts3/fts3.c b/ext/fts3/fts3.c index c9a763ebc7..89eb928826 100644 --- a/ext/fts3/fts3.c +++ b/ext/fts3/fts3.c @@ -2254,7 +2254,7 @@ static int fts3PhraseSelect( for(ii=0; iinToken; ii++){ Fts3PhraseToken *pTok; /* Token to find doclist for */ - int iTok; /* The token being queried this iteration */ + int iTok = 0; /* The token being queried this iteration */ char *pList = 0; /* Pointer to token doclist */ int nList = 0; /* Size of buffer at pList */ diff --git a/manifest b/manifest index 926d333aa3..e5d2b3ca4c 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Merge\sfts3\smatchinfo()\schanges\swith\strunk. -D 2010-11-26T15:17:13 +C Fix\san\suninitialized\svariable\sin\sfts3.c. +D 2010-11-26T16:31:44 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 4547616ad2286053af6ccccefa242dc925e49bf0 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -61,7 +61,7 @@ F ext/fts2/mkfts2amal.tcl 974d5d438cb3f7c4a652639262f82418c1e4cff0 F ext/fts3/README.syntax a19711dc5458c20734b8e485e75fb1981ec2427a F ext/fts3/README.tokenizers 998756696647400de63d5ba60e9655036cb966e9 F ext/fts3/README.txt 8c18f41574404623b76917b9da66fcb0ab38328d -F ext/fts3/fts3.c 0e207ae8008bb37e5c8a10581da328709b318354 +F ext/fts3/fts3.c 7fda91bbe8d6e4a84bed15c38c1e5768347c3609 F ext/fts3/fts3.h 3a10a0af180d502cecc50df77b1b22df142817fe F ext/fts3/fts3Int.h 52c818623c60943bc4ac4a22d77b2e8f28395e78 F ext/fts3/fts3_expr.c ee48b9278b8b2432a05a03320fbcacba151dbaa5 @@ -446,7 +446,7 @@ F test/fts3expr.test 5e745b2b6348499d9ef8d59015de3182072c564c F test/fts3expr2.test 18da930352e5693eaa163a3eacf96233b7290d1a F test/fts3fault.test f83e556465bb69dc8bc676339eca408dce4ca246 F test/fts3malloc.test 9c8cc3f885bb4dfc66d0460c52f68f45e4710d1b -F test/fts3matchinfo.test ae33ea9149b9867b0353b30647fb59d705dea339 +F test/fts3matchinfo.test ae910aa666285e14743a80799214bfb3f1aab8f2 F test/fts3near.test 2e318ee434d32babd27c167142e2b94ddbab4844 F test/fts3query.test ef79d31fdb355d094baec1c1b24b60439a1fb8a2 F test/fts3rnd.test 707533ce943f490443ce5e696236bb1675a37635 @@ -889,7 +889,7 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f -P 461f1a010f55e7da6b43ea65550066b1ca7abad0 ad8df6c5ee0055cf1161a3b700d69dbe07d969bc -R 2c5f31c8d333c565e4e278772ba9f1b5 +P 7d660b91b748126c499285713bd0237530a1a601 +R bf3c79b7317123c38edff4a337096bab U dan -Z ccfce84e75ba63e1edaa17daabaf1c82 +Z e6c80a7ed69438f59cf0d2cdb47a5fa6 diff --git a/manifest.uuid b/manifest.uuid index a3d497e4f9..536ecd90cd 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -7d660b91b748126c499285713bd0237530a1a601 \ No newline at end of file +3c3d076b42da36cd5413749ec022d0349325edfa \ No newline at end of file diff --git a/test/fts3matchinfo.test b/test/fts3matchinfo.test index a7b49cf5ec..be9682aa7e 100644 --- a/test/fts3matchinfo.test +++ b/test/fts3matchinfo.test @@ -317,5 +317,26 @@ do_catchsql_test 6.2 { SELECT offsets(t9) FROM t9 WHERE t9 MATCH 'to'; } {1 {database disk image is malformed}} +#------------------------------------------------------------------------- +# Test the outcome of matchinfo() when used within a query that does not +# use the full-text index (i.e. lookup by rowid or full-table scan). +# +do_execsql_test 7.1 { + CREATE VIRTUAL TABLE t10 USING fts4; + INSERT INTO t10 VALUES('first record'); + INSERT INTO t10 VALUES('second record'); +} +do_execsql_test 7.2 { + SELECT typeof(matchinfo(t10)), length(matchinfo(t10)) FROM t10; +} {blob 0 blob 0} +do_execsql_test 7.3 { + SELECT typeof(matchinfo(t10)), length(matchinfo(t10)) FROM t10 WHERE docid=1; +} {blob 0} +do_execsql_test 7.4 { + SELECT typeof(matchinfo(t10)), length(matchinfo(t10)) + FROM t10 WHERE t10 MATCH 'record' +} {blob 20 blob 20} + + finish_test