]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix a problem in check-in (6226) which could cause an assertion fault
authordrh <drh@noemail.net>
Tue, 3 Feb 2009 13:19:12 +0000 (13:19 +0000)
committerdrh <drh@noemail.net>
Tue, 3 Feb 2009 13:19:12 +0000 (13:19 +0000)
following a malloc failure.  The prior check-in was for ticket #3624. (CVS 6235)

FossilOrigin-Name: 1ffe44e9d6b49346a75850a977953de12c127069

manifest
manifest.uuid
src/func.c

index c9b7484d524dea20421c767602a3722125134974..fa759ef1f7cf42042ded0408bfc97a0a40e9aeeb 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Check-in\s(6230)\sintroduced\sa\sbugs\sin\sSUBSTR()\swhich\swas\scaught\sby\sthe\sfuzz\ntester.\s\sFixed\sby\sthis\scheck-in.\s\sRelated\sto\sticket\s#3628.\s(CVS\s6234)
-D 2009-02-03T13:10:54
+C Fix\sa\sproblem\sin\scheck-in\s(6226)\swhich\scould\scause\san\sassertion\sfault\nfollowing\sa\smalloc\sfailure.\s\sThe\sprior\scheck-in\swas\sfor\sticket\s#3624.\s(CVS\s6235)
+D 2009-02-03T13:19:12
 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
 F Makefile.in 3871d308188cefcb7c5ab20da4c7b6aad023bc52
 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
@@ -113,7 +113,7 @@ F src/date.c 870770dde3fb56772ab247dfb6a6eda44d16cfbc
 F src/delete.c 6249005bdd8f85db6ec5f31ddb5c07de023693cc
 F src/expr.c 76dc3dc83b56ab8db50a772714fac49def8bbf12
 F src/fault.c dc88c821842157460750d2d61a8a8b4197d047ff
-F src/func.c e8f46d1a8c101dacf510727815b4797df4f7bb67
+F src/func.c ccc2bc683ed1b092beafdb374413482fcc9e62d3
 F src/global.c ab003581ea4ff193cfe17a00e1303bc51db619a5
 F src/hash.c 5824e6ff7ba78cd34c8d6cd724367713583e5b55
 F src/hash.h 28f38ebb1006a5beedcb013bcdfe31befe7437ae
@@ -695,7 +695,7 @@ F tool/speedtest16.c c8a9c793df96db7e4933f0852abb7a03d48f2e81
 F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
 F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
-P f2ae82c4d46c2eca30fc60a50ab5064728f20739
-R 6f877daa2e1aedc363217668df247f58
+P cd2e7f6c0fe4c0c648f8ca21388ab0769164f5ef
+R 718fa0ce1dbfbe9a12df42e906ac913f
 U drh
-Z a83094c726be5d79bab4fb1c65a291b4
+Z 05b85b03f1d86246b1ba23cf33a374f3
index 1c7697b4f444624e0d41775e6ef2bd6d77e52ad6..c9052ada0f287e0d3cdc0440c0d56f1253d59340 100644 (file)
@@ -1 +1 @@
-cd2e7f6c0fe4c0c648f8ca21388ab0769164f5ef
\ No newline at end of file
+1ffe44e9d6b49346a75850a977953de12c127069
\ No newline at end of file
index d366112a881c64d8cfd2ed1d7d087211eba3f806..e5542b3b082142aea90feb160162e39f13e52ebc 100644 (file)
@@ -16,7 +16,7 @@
 ** sqliteRegisterBuildinFunctions() found at the bottom of the file.
 ** All other code has file scope.
 **
-** $Id: func.c,v 1.219 2009/02/03 13:10:54 drh Exp $
+** $Id: func.c,v 1.220 2009/02/03 13:19:12 drh Exp $
 */
 #include "sqliteInt.h"
 #include <stdlib.h>
@@ -843,7 +843,8 @@ static void replaceFunc(
   assert( zStr==sqlite3_value_text(argv[0]) );  /* No encoding change */
   zPattern = sqlite3_value_text(argv[1]);
   if( zPattern==0 ){
-    assert( sqlite3_value_type(argv[1])==SQLITE_NULL );
+    assert( sqlite3_value_type(argv[1])==SQLITE_NULL
+            || sqlite3_context_db_handle(context)->mallocFailed );
     return;
   }
   if( zPattern[0]==0 ){