]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix an OOM-recovery problem in the DELETE code generator.
authordrh <drh@noemail.net>
Sat, 16 Nov 2013 23:03:06 +0000 (23:03 +0000)
committerdrh <drh@noemail.net>
Sat, 16 Nov 2013 23:03:06 +0000 (23:03 +0000)
FossilOrigin-Name: dc7be158b82ab9156d0fcdf3394f881eac4d23c3

manifest
manifest.uuid
src/delete.c

index dd8429d5685b3e12e73d435f7ed4d51c2dee8b18..57e956a2ddc8acdc8833bc128e6133ee2b58330b 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Combine\sthe\srowid\sand\sWITHOUT\sROWID\spaths\sfor\sDELETE\sinto\sa\ssingle\spath.
-D 2013-11-16T22:48:52.173
+C Fix\san\sOOM-recovery\sproblem\sin\sthe\sDELETE\scode\sgenerator.
+D 2013-11-16T23:03:06.762
 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
 F Makefile.in 8a07bebafbfda0eb67728f4bd15a36201662d1a1
 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
@@ -174,7 +174,7 @@ F src/callback.c f99a8957ba2adf369645fac0db09ad8adcf1caa2
 F src/complete.c dc1d136c0feee03c2f7550bafc0d29075e36deac
 F src/ctime.c ea4b7f3623a0fcb1146e7f245d7410033e86859c
 F src/date.c 593c744b2623971e45affd0bde347631bdfa4625
-F src/delete.c 1bcc9d7f2e48cf9043a44bdbd333c38c2ef6676a
+F src/delete.c af69db684408d06a446e2ba2d050399773f91b9b
 F src/expr.c 1a295d8b0a2ba08919ad9300ebf7b67988ff4030
 F src/fault.c 160a0c015b6c2629d3899ed2daf63d75754a32bb
 F src/fkey.c 78364daed38e26269c53ddb94c515bceac1063c6
@@ -1140,7 +1140,7 @@ F tool/vdbe-compress.tcl f12c884766bd14277f4fcedcae07078011717381
 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
 F tool/warnings.sh d1a6de74685f360ab718efda6265994b99bbea01
 F tool/win/sqlite.vsix 030f3eeaf2cb811a3692ab9c14d021a75ce41fff
-P e4d220a381388f900a95d1b656a82f14c837f92e
-R d0df7aac2a46f76fbd08b30c4f269d2a
+P c4734b881a64a9d21d03a14e901785797577fbd8
+R 10d8931262d0ae5f1928488f5d08f78e
 U drh
-Z 2d947a1a8ff0ceb82e3a6fad03406bbd
+Z 412c615fb9ef758b4ed11a541f1ecdcc
index e3dbc372846baa24bc588d1b40477ac2813b0f7d..bdf0f87e31d21b053f690d5424a91a31bf4b22ad 100644 (file)
@@ -1 +1 @@
-c4734b881a64a9d21d03a14e901785797577fbd8
\ No newline at end of file
+dc7be158b82ab9156d0fcdf3394f881eac4d23c3
\ No newline at end of file
index 35010a483a7275073e8333490730c7e7c7b37354..a110e899373566a8b4e86bfb048c89b68967879c 100644 (file)
@@ -433,7 +433,10 @@ void sqlite3DeleteFrom(
       */
       nKey = nPk; /* OP_Found will use an unpacked key */
       aToOpen = sqlite3DbMallocRaw(db, nIdx+2);
-      if( aToOpen==0 ) goto delete_from_cleanup;
+      if( aToOpen==0 ){
+        sqlite3WhereEnd(pWInfo);
+        goto delete_from_cleanup;
+      }
       memset(aToOpen, 1, nIdx+1);
       aToOpen[nIdx+1] = 0;
       if( aiCurOnePass[0]>=0 ) aToOpen[aiCurOnePass[0]-iTabCur] = 0;