From: drh Date: Sun, 31 Jan 2010 14:18:21 +0000 (+0000) Subject: If an OOM occurs while setting the page size for the TEMP database, be sure X-Git-Tag: version-3.7.2~623 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7c9c98684c5ac3c75f6d41c1ff829cd304c5abf9;p=thirdparty%2Fsqlite.git If an OOM occurs while setting the page size for the TEMP database, be sure that error gets reported back out to the interface layer. FossilOrigin-Name: 6487e70a1e18bb01ee692e250b41c8652e34a87c --- diff --git a/manifest b/manifest index 5d6e3644df..0a9ca34235 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,8 @@ -C Tweaks\sfor\sconsistency\sto\sthe\sSEE\sand\sCEROD\sAPI\sdeclarations\sin\ssqlite3.h. -D 2010-01-28T19:56:28 +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA1 + +C If\san\sOOM\soccurs\swhile\ssetting\sthe\spage\ssize\sfor\sthe\sTEMP\sdatabase,\sbe\ssure\nthat\serror\sgets\sreported\sback\sout\sto\sthe\sinterface\slayer. +D 2010-01-31T14:18:22 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0 F Makefile.in c5827ead754ab32b9585487177c93bb00b9497b3 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654 @@ -111,7 +114,7 @@ F src/btmutex.c 96a12f50f7a17475155971a241d85ec5171573ff F src/btree.c efdef3953c49e28f8b8fa9cc0ac5754cc1a7489a F src/btree.h 7944a9dac59eb3e541aad45fd2747f1051e7c63d F src/btreeInt.h 54f4245decd0409ea52cf9aee422d3d761d7ac10 -F src/build.c f9002fe1d968812acd67ce6b777ea0325feaf977 +F src/build.c 81412e0f3cabd0cc7a71a1644c46d9ccad9613f5 F src/callback.c 908f3e0172c3d4058f4ca0acd42c637c52e9669f F src/complete.c 4c8a742c4a4a6d9c835912648f5c8f032ea36c7b F src/date.c 485a4409a384310e6d93fd1104a9d0a8658becd9 @@ -785,7 +788,14 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f -P 5dcfb0c9e420d27e54a299b3991b98776651a507 -R 3f6d86ffc7b7734d19f482578e1b2618 -U shaneh -Z e9c5927c3ee6681a66cdbd8c1349be59 +P 299f74567b1b97a1fdc0a620ef382cfd24941809 +R d7d81d9edc0abb1fdc05d9e07aaf5fda +U drh +Z be353c65f5b74f6fcedb67fd03cc0027 +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v1.4.6 (GNU/Linux) + +iD8DBQFLZZExoxKgR168RlERAhJnAJ0WCFV3r3E8XSFKq3oEHZbgXPsLbQCdFTje +AiU5s+2d0GNlSRkD5GXMnnI= +=3ufe +-----END PGP SIGNATURE----- diff --git a/manifest.uuid b/manifest.uuid index 4ee8237777..7fafb8c090 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -299f74567b1b97a1fdc0a620ef382cfd24941809 \ No newline at end of file +6487e70a1e18bb01ee692e250b41c8652e34a87c \ No newline at end of file diff --git a/src/build.c b/src/build.c index 061b3389ac..6f656d840b 100644 --- a/src/build.c +++ b/src/build.c @@ -3421,6 +3421,7 @@ int sqlite3OpenTempDatabase(Parse *pParse){ assert( db->aDb[1].pSchema ); if( SQLITE_NOMEM==sqlite3BtreeSetPageSize(pBt, db->nextPagesize, -1, 0) ){ db->mallocFailed = 1; + return 1; } sqlite3PagerJournalMode(sqlite3BtreePager(pBt), db->dfltJournalMode); }