]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix an FTS3 problem where an OOM error was not being propagated back
authordrh <drh@noemail.net>
Fri, 4 Dec 2009 13:42:59 +0000 (13:42 +0000)
committerdrh <drh@noemail.net>
Fri, 4 Dec 2009 13:42:59 +0000 (13:42 +0000)
out to the top-level interface.

FossilOrigin-Name: 2ad1461f255c2499367b706a5ec65b44c1fc1618

ext/fts3/fts3.c
manifest
manifest.uuid

index cca04a573b00d4d7f32fe5e1e403a2e4641ea4e5..980304dadc2b7039ded891aaa04c60c7aa372334 100644 (file)
@@ -1563,12 +1563,14 @@ static int fts3TermSelect(
         sqlite3_int64 i2 = sqlite3_column_int64(pStmt, 2);
         rc = sqlite3Fts3SegReaderNew(p, iAge, i1, i2, 0, 0, 0, &pNew);
       }
-      sqlite3Fts3ReadBlock(p, 0, 0, 0);
+      if( rc==SQLITE_OK ){
+        rc = sqlite3Fts3ReadBlock(p, 0, 0, 0);
+      }
     }
     iAge++;
 
     /* If a new Fts3SegReader was allocated, add it to the apSegment array. */
-    assert( (rc==SQLITE_OK)==(pNew!=0) );
+    assert( pNew!=0 || rc!=SQLITE_OK );
     if( pNew ){
       if( nSegment==nAlloc ){
         Fts3SegReader **pArray;
index 0874d9e367724110c6e334716f854feb22882b51..88f6e715570361807d94f4ef7a118b4856b8a66e 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,8 @@
-C Reset\sthe\sstate\sof\sthe\sasynchronous\sIO\smodule\sat\sthe\send\sof\sthe\stkt-94c04eaadb.test\sscript.
-D 2009-12-04T08:41:00
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA1
+
+C Fix\san\sFTS3\sproblem\swhere\san\sOOM\serror\swas\snot\sbeing\spropagated\sback\nout\sto\sthe\stop-level\sinterface.
+D 2009-12-04T13:43:00
 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
 F Makefile.in c5827ead754ab32b9585487177c93bb00b9497b3
 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
@@ -56,7 +59,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 b15d44a46f76b08806b75d70c44c62254269d619
+F ext/fts3/fts3.c fb2459bc19dfc3594ee66b3155444ca05f7ca903
 F ext/fts3/fts3.h 3a10a0af180d502cecc50df77b1b22df142817fe
 F ext/fts3/fts3Int.h cc716c74afa7da8e0f8ef39404f33ea62a823eb3
 F ext/fts3/fts3_expr.c c18794a62c257d3456d3314c5a18e348ae0d84bd
@@ -776,7 +779,14 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
 F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
 F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
-P 3bb64842acdca2a4e81f1c72130a90c23b0804f1
-R 1f53e9168e6eecbc2ad14610a89af867
-U dan
-Z a4f919370d7d735ad20ccedd36d51ae5
+P e8ae7e98977ff2a47237ad64f8a9a800a6d2797c
+R 0e758f5e47d04871f42083bba7a7b4d8
+U drh
+Z 836c78b8bfb06ee08ae63949c0d6547b
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v1.4.6 (GNU/Linux)
+
+iD8DBQFLGRHnoxKgR168RlERAlDOAKCBM26yhl/CHQAH9C/zrnwkIo3gxwCfUCC4
+tNbW8OhAD6vpZUfnJqfu1UI=
+=oqsH
+-----END PGP SIGNATURE-----
index 1d441d912896bb6d6b9593dd950c1b0165613024..a117cd44ba9095a04a4c85e55f4d55f8c08893ea 100644 (file)
@@ -1 +1 @@
-e8ae7e98977ff2a47237ad64f8a9a800a6d2797c
\ No newline at end of file
+2ad1461f255c2499367b706a5ec65b44c1fc1618
\ No newline at end of file