From b0367fb8b0044bb99e683cf47d3dc1b4e51a29fc Mon Sep 17 00:00:00 2001 From: drh Date: Sat, 25 Aug 2012 02:11:13 +0000 Subject: [PATCH 01/13] Fix a harmless compiler warning. FossilOrigin-Name: 929b51840b83ee1ca5add8fe430913e7c4e2a3d6 --- manifest | 12 ++++++------ manifest.uuid | 2 +- src/where.c | 6 +++--- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/manifest b/manifest index f48746c07c..b30b884678 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C When\sthe\ssame\sindex\sis\sused\sfor\sall\sOR-terms\sin\sa\sWHERE\sclause,\sthen\stry\sto\nuse\sthat\sindex\sas\sa\scovering\sindex. -D 2012-08-24T23:56:19.679 +C Fix\sa\sharmless\scompiler\swarning. +D 2012-08-25T02:11:13.487 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in abd5c10d21d1395f140d9e50ea999df8fa4d6376 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -250,7 +250,7 @@ F src/vtab.c bb8ea3a26608bb1357538a5d2fc72beba6638998 F src/wal.c 9294df6f96aae5909ae1a9b733fd1e1b4736978b F src/wal.h 29c197540b19044e6cd73487017e5e47a1d3dac6 F src/walker.c 3d75ba73de15e0f8cd0737643badbeb0e002f07b -F src/where.c 9a28820fb0ead5674d5b45dfdb32aef913fe40c3 +F src/where.c 22783f4275f6fc09b663115a6091837cb5c510e0 F test/8_3_names.test 631ea964a3edb091cf73c3b540f6bcfdb36ce823 F test/aggerror.test a867e273ef9e3d7919f03ef4f0e8c0d2767944f2 F test/aggnested.test 0be144b453e0622a085fae8665c32f5676708e00 @@ -1013,7 +1013,7 @@ F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/win/sqlite.vsix 67d8a99aceb56384a81b3f30d6c71743146d2cc9 -P d4cd6017c9875947a05b1dc36538d4272fb18739 b722143d075979ba3d92b7b29e576ce2307187d1 -R d51bc6dccf316fa29f046fa529eea646 +P 62678be3df35cdcb09172ba8c860f7b73517f1ea +R 8f8d8faf27ea3974f9d239d934dc7769 U drh -Z 88e4cd6b2ce7efc36bc2db59aa6b0ac5 +Z 543f2e170a0025b269105a24582957fc diff --git a/manifest.uuid b/manifest.uuid index 100c67b276..2e836bc372 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -62678be3df35cdcb09172ba8c860f7b73517f1ea \ No newline at end of file +929b51840b83ee1ca5add8fe430913e7c4e2a3d6 \ No newline at end of file diff --git a/src/where.c b/src/where.c index a460abc2d7..9bbbd43d10 100644 --- a/src/where.c +++ b/src/where.c @@ -5093,10 +5093,10 @@ WhereInfo *sqlite3WhereBegin( if( (pLevel->plan.wsFlags & WHERE_INDEXED)!=0 ){ Index *pIx = pLevel->plan.u.pIdx; KeyInfo *pKey = sqlite3IndexKeyinfo(pParse, pIx); - int iIdxCur = pLevel->iIdxCur; + int iIndexCur = pLevel->iIdxCur; assert( pIx->pSchema==pTab->pSchema ); - assert( iIdxCur>=0 ); - sqlite3VdbeAddOp4(v, OP_OpenRead, iIdxCur, pIx->tnum, iDb, + assert( iIndexCur>=0 ); + sqlite3VdbeAddOp4(v, OP_OpenRead, iIndexCur, pIx->tnum, iDb, (char*)pKey, P4_KEYINFO_HANDOFF); VdbeComment((v, "%s", pIx->zName)); } From d5578433ff270995a4bfb4085ef9cef5c1ce9ac8 Mon Sep 17 00:00:00 2001 From: mistachkin Date: Sat, 25 Aug 2012 10:01:29 +0000 Subject: [PATCH 02/13] Fix all known instances of 'repeated the' style typos in comments. No changes to code. FossilOrigin-Name: 9b19b847533f944f289d93dcdba29c0d67bf251c --- doc/lemon.html | 2 +- doc/pager-invariants.txt | 2 +- ext/fts2/fts2.c | 2 +- ext/fts3/fts3_write.c | 4 +-- manifest | 58 ++++++++++++++++++++-------------------- manifest.uuid | 2 +- src/btree.c | 2 +- src/build.c | 2 +- src/insert.c | 2 +- src/os_unix.c | 4 +-- src/os_win.c | 2 +- src/pager.c | 4 +-- src/rowset.c | 2 +- src/select.c | 2 +- src/sqlite.h.in | 2 +- src/sqliteInt.h | 2 +- src/test4.c | 2 +- src/test_vfstrace.c | 2 +- src/trigger.c | 2 +- src/vdbeaux.c | 2 +- src/wal.c | 2 +- test/crash.test | 2 +- test/journal1.test | 2 +- test/rowid.test | 2 +- test/wal2.test | 2 +- 25 files changed, 56 insertions(+), 56 deletions(-) diff --git a/doc/lemon.html b/doc/lemon.html index 2c65555972..b16e35960e 100644 --- a/doc/lemon.html +++ b/doc/lemon.html @@ -481,7 +481,7 @@ as follows:
  • If the precedences are the same and the shift token is right-associative, then resolve in favor of the shift. No parsing conflict is reported. -
  • If the precedences are the same the the shift token is +
  • If the precedences are the same the shift token is left-associative, then resolve in favor of the reduce. No parsing conflict is reported.
  • Otherwise, resolve the conflict by doing the shift and diff --git a/doc/pager-invariants.txt b/doc/pager-invariants.txt index c6deda7a69..44444dad54 100644 --- a/doc/pager-invariants.txt +++ b/doc/pager-invariants.txt @@ -44,7 +44,7 @@ *** Definition: Two databases (or the same database at two points it time) are said to be "logically equivalent" if they give the same answer to - all queries. Note in particular the the content of freelist leaf + all queries. Note in particular the content of freelist leaf pages can be changed arbitarily without effecting the logical equivalence of the database. diff --git a/ext/fts2/fts2.c b/ext/fts2/fts2.c index 74c2890d23..93e03cd557 100644 --- a/ext/fts2/fts2.c +++ b/ext/fts2/fts2.c @@ -5051,7 +5051,7 @@ static int leavesReaderAtEnd(LeavesReader *pReader){ ** modification to control flow all over the place, though, so for now ** just punt. ** -** Note the the current system assumes that segment merges will run to +** Note the current system assumes that segment merges will run to ** completion, which is why this particular probably hasn't arisen in ** this case. Probably a brittle assumption. */ diff --git a/ext/fts3/fts3_write.c b/ext/fts3/fts3_write.c index 5b54cf4a03..c9f1743210 100644 --- a/ext/fts3/fts3_write.c +++ b/ext/fts3/fts3_write.c @@ -2969,7 +2969,7 @@ static int fts3SegmentMerge( if( iLevel==FTS3_SEGCURSOR_ALL ){ /* This call is to merge all segments in the database to a single - ** segment. The level of the new segment is equal to the the numerically + ** segment. The level of the new segment is equal to the numerically ** greatest segment level currently present in the database for this ** index. The idx of the new segment is always 0. */ if( csr.nSegment==1 ){ @@ -3599,7 +3599,7 @@ static int fts3IncrmergePush( pNode->key.n = nTerm; } }else{ - /* Otherwise, flush the the current node of layer iLayer to disk. + /* Otherwise, flush the current node of layer iLayer to disk. ** Then allocate a new, empty sibling node. The key will be written ** into the parent of this node. */ rc = fts3WriteSegment(p, pNode->iBlock, pNode->block.a, pNode->block.n); diff --git a/manifest b/manifest index b30b884678..ff4a421396 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\sa\sharmless\scompiler\swarning. -D 2012-08-25T02:11:13.487 +C Fix\sall\sknown\sinstances\sof\s'repeated\sthe'\sstyle\stypos\sin\scomments.\s\sNo\schanges\sto\scode. +D 2012-08-25T10:01:29.456 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in abd5c10d21d1395f140d9e50ea999df8fa4d6376 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -18,8 +18,8 @@ F config.sub 9ebe4c3b3dab6431ece34f16828b594fb420da55 F configure e2d0e3b67d2b1b1049d389fd671275d79bb80457 x F configure.ac 6e909664785b8184db2179013cd9d574f96ca3a3 F contrib/sqlitecon.tcl 210a913ad63f9f991070821e599d600bd913e0ad -F doc/lemon.html 3091574143dd3415669b6745843ff8d011d33549 -F doc/pager-invariants.txt 870107036470d7c419e93768676fae2f8749cf9e +F doc/lemon.html 334dbf6621b8fb8790297ec1abf3cfa4621709d1 +F doc/pager-invariants.txt 27fed9a70ddad2088750c4a2b493b63853da2710 F doc/vfs-shm.txt e101f27ea02a8387ce46a05be2b1a902a021d37a F ext/README.txt 913a7bd3f4837ab14d7e063304181787658b14e1 F ext/async/README.txt 0c541f418b14b415212264cbaaf51c924ec62e5b @@ -41,7 +41,7 @@ F ext/fts1/simple_tokenizer.c 1844d72f7194c3fd3d7e4173053911bf0661b70d F ext/fts1/tokenizer.h 0c53421b832366d20d720d21ea3e1f6e66a36ef9 F ext/fts2/README.tokenizers 21e3684ea5a095b55d70f6878b4ce6af5932dfb7 F ext/fts2/README.txt 8c18f41574404623b76917b9da66fcb0ab38328d -F ext/fts2/fts2.c 238e9e19158ef75fb4155613a870443394fbf7da +F ext/fts2/fts2.c 4ef7d7ecf590da0dd416ac54612c53a7d4175790 F ext/fts2/fts2.h da5f76c65163301d1068a971fd32f4119e3c95fa F ext/fts2/fts2_hash.c 2689e42e1107ea67207f725cf69cf8972d00cf93 F ext/fts2/fts2_hash.h 9a5b1be94664139f93217a0770d7144425cffb3a @@ -72,7 +72,7 @@ F ext/fts3/fts3_tokenizer.h 66dec98e365854b6cd2d54f1a96bb6d428fc5a68 F ext/fts3/fts3_tokenizer1.c 5c98225a53705e5ee34824087478cf477bdb7004 F ext/fts3/fts3_unicode.c 49e36e6ba59f79e6bd6a8bfe434570fe48d20559 F ext/fts3/fts3_unicode2.c a863f05f758af36777dffc2facc898bc73fec896 -F ext/fts3/fts3_write.c f40042ba5602c58bdd94bd1b9e00205fb73d37cd +F ext/fts3/fts3_write.c c30c49f3debb9497a07f15cc4c042815e35474ef F ext/fts3/fts3speed.tcl b54caf6a18d38174f1a6e84219950d85e98bb1e9 F ext/fts3/mkfts3amal.tcl 252ecb7fe6467854f2aa237bf2c390b74e71f100 F ext/fts3/tool/fts3view.c 6cfc5b67a5f0e09c0d698f9fd012c784bfaa9197 @@ -123,10 +123,10 @@ F src/auth.c 523da7fb4979469955d822ff9298352d6b31de34 F src/backup.c 5b31b24d6814b11de763debf342c8cd0a15a4910 F src/bitvec.c 26675fe8e431dc555e6f2d0e11e651d172234aa1 F src/btmutex.c 976f45a12e37293e32cae0281b15a21d48a8aaa7 -F src/btree.c 32dc63ef18c6a8d448c37c030ced70cf23ccad75 +F src/btree.c 9cf6de113d23d47967df24b8d8ce6501c879d7e6 F src/btree.h 4aee02e879211bfcfd3f551769578d2e940ab6c2 F src/btreeInt.h 4e5c2bd0f9b36b2a815a6d84f771a61a65830621 -F src/build.c 196734374128023e414a818f2051d836badb3526 +F src/build.c a3b700afd475e6387da59be6f2e86161e80d6d87 F src/callback.c 0cb4228cdcd827dcc5def98fb099edcc9142dbcd F src/complete.c dc1d136c0feee03c2f7550bafc0d29075e36deac F src/ctime.c 500d019da966631ad957c37705642be87524463b @@ -140,7 +140,7 @@ F src/global.c 4cfdca5cb0edd33c4d021baec4ede958cb2c793b F src/hash.c a4031441741932da9e7a65bee2b36b5d0e81c073 F src/hash.h 2894c932d84d9f892d4b4023a75e501f83050970 F src/hwtime.h d32741c8f4df852c7d959236615444e2b1063b08 -F src/insert.c 770ed633830fb49d73d90c3fdf20b703973e1e84 +F src/insert.c b090d0a9fb9ff2dbdeaf66aedccf98cd13b1af60 F src/journal.c 552839e54d1bf76fb8f7abe51868b66acacf6a0e F src/legacy.c a199d7683d60cef73089e892409113e69c23a99f F src/lempar.c 0ee69fca0be54cd93939df98d2aca4ca46f44416 @@ -162,9 +162,9 @@ F src/notify.c 976dd0f6171d4588e89e874fcc765e92914b6d30 F src/os.c e1acdc09ff3ac2412945cca9766e2dcf4675f31c F src/os.h 027491c77d2404c0a678bb3fb06286f331eb9b57 F src/os_common.h 92815ed65f805560b66166e3583470ff94478f04 -F src/os_unix.c b5149a3343a6acd6c9df4e3acf5085a6501c1f68 -F src/os_win.c 88f8cc4ffdbb47e0f8f8b60110fcf90e461c5fb4 -F src/pager.c e381c118b77dc22021a1a59d3fec24815e91df78 +F src/os_unix.c 69b2fe66316524eebf5f1ce85c1fdfe2952307e9 +F src/os_win.c 421cfe2f2b4293a3ca9447be42fdc3ef2e8679de +F src/pager.c 5665fa9ecec51f11dabdfd8eefefa89391856007 F src/pager.h 8b8c9bc065a3c66769df8724dfdf492ee1aab3c5 F src/parse.y f29df90bd3adc64b33114ab1de9fb7768fcf2099 F src/pcache.c f8043b433a57aba85384a531e3937a804432a346 @@ -175,12 +175,12 @@ F src/prepare.c 33291b83cca285718048d219c67b8298501fa3a5 F src/printf.c 4a9f882f1c1787a8b494a2987765acf9d97ac21f F src/random.c cd4a67b3953b88019f8cd4ccd81394a8ddfaba50 F src/resolve.c 9e28280ec98035f31900fdd1db01f86f68ca6c32 -F src/rowset.c f6a49f3e9579428024662f6e2931832511f831a1 -F src/select.c a9d68e04f07348038ac279f3316ee8f8e146f59a +F src/rowset.c 64655f1a627c9c212d9ab497899e7424a34222e0 +F src/select.c 7c62350de1d619d058030f8dc2b11a95cfde77ac F src/shell.c 076e1c90d594644f36027c8ecff9a392cf2d3a06 -F src/sqlite.h.in f664797c68ced43c2ea2c541d4ec8e1e04ec68ac +F src/sqlite.h.in b20d50c7efe592aa9420386937c26fe8efd9e0d1 F src/sqlite3ext.h 6904f4aadf976f95241311fbffb00823075d9477 -F src/sqliteInt.h 497e89baddee92a4769cbc2c169b654a223f75d6 +F src/sqliteInt.h 053e03a532beb909ead2df0721db67cdb4c48ae8 F src/sqliteLimit.h 164b0e6749d31e0daa1a4589a169d31c0dec7b3d F src/status.c 35939e7e03abf1b7577ce311f48f682c40de3208 F src/table.c 2cd62736f845d82200acfa1287e33feb3c15d62e @@ -188,7 +188,7 @@ F src/tclsqlite.c fe5406573e1527957e00dcaf51edd9d8bd31b918 F src/test1.c 3d70f7c5987f186884cfebbfa7151a7d3d67d86e F src/test2.c 4178056dd1e7d70f954ad8a1e3edb71a2a784daf F src/test3.c 3c3c2407fa6ec7a19e24ae23f7cb439d0275a60d -F src/test4.c d1e5a5e904d4b444cf572391fdcb017638e36ff7 +F src/test4.c bf9fa9bece01de08e6f5e02314e4af5c13590dfa F src/test5.c a6d1ac55ac054d0b2b8f37b5e655b6c92645a013 F src/test6.c 417e1e214734393c24a8ee80b41485a9c4169123 F src/test7.c 2e0781754905c8adc3268d8f0967e7633af58843 @@ -228,11 +228,11 @@ F src/test_syscall.c a992d8c80ea91fbf21fb2dd570db40e77dd7e6ae F src/test_tclvar.c f4dc67d5f780707210d6bb0eb6016a431c04c7fa F src/test_thread.c e286f2173563f2a1747c24bcda6b9d030bf4f4e4 F src/test_vfs.c c6260ef238c1142c8f8bd402db02216afd182ae3 -F src/test_vfstrace.c 6b28adb2a0e8ecd0f2e3581482e1f658b11b4067 +F src/test_vfstrace.c f60e12754e65c05386aab59db8d2ae086314138d F src/test_wholenumber.c 3d2b9ed1505c40ad5c5ca2ad16ae7a289d6cc251 F src/test_wsd.c 41cadfd9d97fe8e3e4e44f61a4a8ccd6f7ca8fe9 F src/tokenize.c 1e86210d3976717a19238ea7b047fac481fe8c12 -F src/trigger.c ee7e178fb9188f44b532cebd449a7c1df90fb684 +F src/trigger.c 3f258307040173aff383eb23fb74c44fe829078c F src/update.c 28d2d098b43a2c70dae399896ea8a02f622410ef F src/utf.c 890c67dcfcc7a74623c95baac7535aadfe265e84 F src/util.c 0af2e515dc0dabacec931bca39525f6c3f1c5455 @@ -241,13 +241,13 @@ F src/vdbe.c 75da79cdcd58481825a06f045bc2f5ea3966eeae F src/vdbe.h 18f581cac1f4339ec3299f3e0cc6e11aec654cdb F src/vdbeInt.h 986b6b11a13c517337355009e5438703ba5b0a40 F src/vdbeapi.c 88ea823bbcb4320f5a6607f39cd7c2d3cc4c26b1 -F src/vdbeaux.c dce80038c3c41f2680e5ab4dd0f7e0d8b7ff9071 +F src/vdbeaux.c 9c293fd3040211687e83d5d27bef2382933146c2 F src/vdbeblob.c 32f2a4899d67f69634ea4dd93e3f651936d732cb F src/vdbemem.c cb55e84b8e2c15704968ee05f0fae25883299b74 F src/vdbesort.c 0dc1b274dcb4d4c8e71b0b2b15261f286caba39b F src/vdbetrace.c 8bd5da325fc90f28464335e4cc4ad1407fe30835 F src/vtab.c bb8ea3a26608bb1357538a5d2fc72beba6638998 -F src/wal.c 9294df6f96aae5909ae1a9b733fd1e1b4736978b +F src/wal.c 5acb3e7bbd31f10ba39acad9ce6b399055337a9d F src/wal.h 29c197540b19044e6cd73487017e5e47a1d3dac6 F src/walker.c 3d75ba73de15e0f8cd0737643badbeb0e002f07b F src/where.c 22783f4275f6fc09b663115a6091837cb5c510e0 @@ -351,7 +351,7 @@ F test/corruptD.test 99b1999dbfa7cc04aaeac9d695a2445d4e7c7458 F test/corruptE.test 1b9eb20a8711251ce57b44a257e241085b39b52d F test/corruptF.test 984b1706c9c0e4248141b056c21124612628d12e F test/count.test 454e1ce985c94d13efeac405ce54439f49336163 -F test/crash.test 519dc29f6fea151f015a23236e555239353946eb +F test/crash.test fb9dc4a02dcba30d4aa5c2c226f98b220b2b959f F test/crash2.test 5b14d4eb58b880e231361d3b609b216acda86651 F test/crash3.test 8f5de9d32ab9ab95475a9efe7f47a940aa889418 F test/crash4.test fe2821baf37168dc59dd733dcf7dba2a401487bc @@ -556,7 +556,7 @@ F test/join3.test 6f0c774ff1ba0489e6c88a3e77b9d3528fb4fda0 F test/join4.test 1a352e4e267114444c29266ce79e941af5885916 F test/join5.test 86675fc2919269aa923c84dd00ee4249b97990fe F test/join6.test cfe6503791ceb0cbb509966740286ec423cbf10b -F test/journal1.test 8b71ef1ed5798bdc0e6eb616d8694e2c2c188d4d +F test/journal1.test 69abc726c51b4a0409189f9a85191205297c0577 F test/journal2.test ae06f566c28552c313ded3fee79a6c69e6d049b1 F test/journal3.test ff8af941f9e06161d3db1b46bb9f965ff0e7f307 F test/jrnlmode.test 9ee3a78f53d52cca737db69293d15dc41c0cbd36 @@ -662,7 +662,7 @@ F test/releasetest.mk 2eced2f9ae701fd0a29e714a241760503ccba25a F test/releasetest.tcl e48fd8e0e8abad89f30e08620790533ae4e02010 F test/rollback.test a1b4784b864331eae8b2a98c189efa2a8b11ff07 F test/rowhash.test 0bc1d31415e4575d10cacf31e1a66b5cc0f8be81 -F test/rowid.test e58e0acef38b527ed1b0b70d3ada588f804af287 +F test/rowid.test f777404492adb0e00868fd706a3721328fd3af48 F test/rtree.test 0c8d9dd458d6824e59683c19ab2ffa9ef946f798 F test/savepoint.test f5acd87d0c7a5f4ad6c547b47fd18c0e1aeaf048 F test/savepoint2.test 9b8543940572a2f01a18298c3135ad0c9f4f67d7 @@ -929,7 +929,7 @@ F test/vtab_alter.test 9e374885248f69e251bdaacf480b04a197f125e5 F test/vtab_err.test 0d4d8eb4def1d053ac7c5050df3024fd47a3fbd8 F test/vtab_shared.test 82f463886e18d7f8395a4b6167c91815efe54839 F test/wal.test a040047d7f2b9f34bc4d597964e5e7c09609c635 -F test/wal2.test 7ca814723c487de87d945cdc85c9a0fa45fa8de8 +F test/wal2.test d4b470f13c87f6d8268b004380afa04c3c67cb90 F test/wal3.test b22eb662bcbc148c5f6d956eaf94b047f7afe9c0 F test/wal4.test 4744e155cd6299c6bd99d3eab1c82f77db9cdb3c F test/wal5.test f58ed4b8b542f71c7441da12fbd769d99b362437 @@ -1013,7 +1013,7 @@ F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/win/sqlite.vsix 67d8a99aceb56384a81b3f30d6c71743146d2cc9 -P 62678be3df35cdcb09172ba8c860f7b73517f1ea -R 8f8d8faf27ea3974f9d239d934dc7769 -U drh -Z 543f2e170a0025b269105a24582957fc +P 929b51840b83ee1ca5add8fe430913e7c4e2a3d6 +R 6e6b1c39535d5b3d0db6b2f4f5ffabb4 +U mistachkin +Z b0c2ec5ca51055c07cc58e9bae28b36c diff --git a/manifest.uuid b/manifest.uuid index 2e836bc372..39177dde0c 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -929b51840b83ee1ca5add8fe430913e7c4e2a3d6 \ No newline at end of file +9b19b847533f944f289d93dcdba29c0d67bf251c \ No newline at end of file diff --git a/src/btree.c b/src/btree.c index 1c2e26ff79..47dd7db99d 100644 --- a/src/btree.c +++ b/src/btree.c @@ -6083,7 +6083,7 @@ static int balance_nonroot( /* ** Load pointers to all cells on sibling pages and the divider cells ** into the local apCell[] array. Make copies of the divider cells - ** into space obtained from aSpace1[] and remove the the divider Cells + ** into space obtained from aSpace1[] and remove the divider cells ** from pParent. ** ** If the siblings are on leaf pages, then the child pointers of the diff --git a/src/build.c b/src/build.c index c7ad2d1e70..25e474031f 100644 --- a/src/build.c +++ b/src/build.c @@ -2536,7 +2536,7 @@ Index *sqlite3CreateIndex( assert( pName && pName->z ); #ifndef SQLITE_OMIT_TEMPDB - /* If the index name was unqualified, check if the the table + /* If the index name was unqualified, check if the table ** is a temp table. If so, set the database to 1. Do not do this ** if initialising a database schema. */ diff --git a/src/insert.c b/src/insert.c index faed6470c2..a24e8f9481 100644 --- a/src/insert.c +++ b/src/insert.c @@ -1271,7 +1271,7 @@ void sqlite3GenerateConstraintChecks( case OE_Replace: { /* If there are DELETE triggers on this table and the ** recursive-triggers flag is set, call GenerateRowDelete() to - ** remove the conflicting row from the the table. This will fire + ** remove the conflicting row from the table. This will fire ** the triggers and remove both the table and index b-tree entries. ** ** Otherwise, if there are no triggers or the recursive-triggers diff --git a/src/os_unix.c b/src/os_unix.c index a0326c963e..c0df66e8e0 100644 --- a/src/os_unix.c +++ b/src/os_unix.c @@ -1052,7 +1052,7 @@ static unixInodeInfo *inodeList = 0; ** The first argument passed to the macro should be the error code that ** will be returned to SQLite (e.g. SQLITE_IOERR_DELETE, SQLITE_CANTOPEN). ** The two subsequent arguments should be the name of the OS function that -** failed (e.g. "unlink", "open") and the the associated file-system path, +** failed (e.g. "unlink", "open") and the associated file-system path, ** if any. */ #define unixLogError(a,b,c) unixLogErrorAtLine(a,b,c,__LINE__) @@ -1075,7 +1075,7 @@ static int unixLogErrorAtLine( zErr = aErr; /* If STRERROR_R_CHAR_P (set by autoconf scripts) or __USE_GNU is defined, - ** assume that the system provides the the GNU version of strerror_r() that + ** assume that the system provides the GNU version of strerror_r() that ** returns a pointer to a buffer containing the error message. That pointer ** may point to aErr[], or it may point to some static storage somewhere. ** Otherwise, assume that the system provides the POSIX version of diff --git a/src/os_win.c b/src/os_win.c index 1beb40b0ce..450f80e2be 100644 --- a/src/os_win.c +++ b/src/os_win.c @@ -1464,7 +1464,7 @@ static int getLastErrorMsg(DWORD lastErrno, int nBuf, char *zBuf){ ** The first argument passed to the macro should be the error code that ** will be returned to SQLite (e.g. SQLITE_IOERR_DELETE, SQLITE_CANTOPEN). ** The two subsequent arguments should be the name of the OS function that -** failed and the the associated file-system path, if any. +** failed and the associated file-system path, if any. */ #define winLogError(a,b,c,d) winLogErrorAtLine(a,b,c,d,__LINE__) static int winLogErrorAtLine( diff --git a/src/pager.c b/src/pager.c index a3f5d6ec2e..09c2a5f90d 100644 --- a/src/pager.c +++ b/src/pager.c @@ -75,7 +75,7 @@ ** ** Definition: Two databases (or the same database at two points it time) ** are said to be "logically equivalent" if they give the same answer to -** all queries. Note in particular the the content of freelist leaf +** all queries. Note in particular the content of freelist leaf ** pages can be changed arbitarily without effecting the logical equivalence ** of the database. ** @@ -3849,7 +3849,7 @@ void sqlite3PagerRef(DbPage *pPg){ ** ** If the Pager.noSync flag is set, then this function is a no-op. ** Otherwise, the actions required depend on the journal-mode and the -** device characteristics of the the file-system, as follows: +** device characteristics of the file-system, as follows: ** ** * If the journal file is an in-memory journal file, no action need ** be taken. diff --git a/src/rowset.c b/src/rowset.c index 58c18b78db..5761f98550 100644 --- a/src/rowset.c +++ b/src/rowset.c @@ -440,7 +440,7 @@ int sqlite3RowSetNext(RowSet *p, i64 *pRowid){ } /* -** Check to see if element iRowid was inserted into the the rowset as +** Check to see if element iRowid was inserted into the rowset as ** part of any insert batch prior to iBatch. Return 1 or 0. ** ** If this is the first test of a new batch and if there exist entires diff --git a/src/select.c b/src/select.c index b3860b0e38..7762e8975d 100644 --- a/src/select.c +++ b/src/select.c @@ -1970,7 +1970,7 @@ static int generateOutputSubroutine( } if( pParse->db->mallocFailed ) return 0; - /* Suppress the the first OFFSET entries if there is an OFFSET clause + /* Suppress the first OFFSET entries if there is an OFFSET clause */ codeOffset(v, p, iContinue); diff --git a/src/sqlite.h.in b/src/sqlite.h.in index 9281fa48db..894c6b86fe 100644 --- a/src/sqlite.h.in +++ b/src/sqlite.h.in @@ -512,7 +512,7 @@ int sqlite3_exec( ** CAPI3REF: Device Characteristics ** ** The xDeviceCharacteristics method of the [sqlite3_io_methods] -** object returns an integer which is a vector of the these +** object returns an integer which is a vector of these ** bit values expressing I/O characteristics of the mass storage ** device that holds the file that the [sqlite3_io_methods] ** refers to. diff --git a/src/sqliteInt.h b/src/sqliteInt.h index 19cd05eeb8..09163bf69c 100644 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@ -1917,7 +1917,7 @@ struct WherePlan { /* ** For each nested loop in a WHERE clause implementation, the WhereInfo ** structure contains a single instance of this structure. This structure -** is intended to be private the the where.c module and should not be +** is intended to be private to the where.c module and should not be ** access or modified by other modules. ** ** The pIdxInfo field is used to help pick the best index on a diff --git a/src/test4.c b/src/test4.c index 5c94370a3d..5b4c5a1c17 100644 --- a/src/test4.c +++ b/src/test4.c @@ -9,7 +9,7 @@ ** May you share freely, never taking more than you give. ** ************************************************************************* -** Code for testing the the SQLite library in a multithreaded environment. +** Code for testing the SQLite library in a multithreaded environment. */ #include "sqliteInt.h" #include "tcl.h" diff --git a/src/test_vfstrace.c b/src/test_vfstrace.c index 3a0e2cf03e..d2f7455e3d 100644 --- a/src/test_vfstrace.c +++ b/src/test_vfstrace.c @@ -45,7 +45,7 @@ ** interprets VFS calls before passing them off to another VFS which does ** the actual work. In this case the other VFS - the one that does the ** real work - is identified by the second parameter, zOldVfsName. If -** the the 2nd parameter is NULL then the default VFS is used. The common +** the 2nd parameter is NULL then the default VFS is used. The common ** case is for the 2nd parameter to be NULL. ** ** The third and fourth parameters are the pointer to the output function diff --git a/src/trigger.c b/src/trigger.c index 3c4bf62a18..8985ec6eb8 100644 --- a/src/trigger.c +++ b/src/trigger.c @@ -111,7 +111,7 @@ void sqlite3BeginTrigger( iDb = 1; pName = pName1; }else{ - /* Figure out the db that the the trigger will be created in */ + /* Figure out the db that the trigger will be created in */ iDb = sqlite3TwoPartName(pParse, pName1, pName2, &pName); if( iDb<0 ){ goto trigger_cleanup; diff --git a/src/vdbeaux.c b/src/vdbeaux.c index 3ccf711619..d4f9864b14 100644 --- a/src/vdbeaux.c +++ b/src/vdbeaux.c @@ -774,7 +774,7 @@ void sqlite3VdbeChangeP4(Vdbe *p, int addr, const char *zP4, int n){ #ifndef NDEBUG /* -** Change the comment on the the most recently coded instruction. Or +** Change the comment on the most recently coded instruction. Or ** insert a No-op and add the comment to that new instruction. This ** makes the code easier to read during debugging. None of this happens ** in a production build. diff --git a/src/wal.c b/src/wal.c index 28749fd31e..cc166ba430 100644 --- a/src/wal.c +++ b/src/wal.c @@ -150,7 +150,7 @@ ** more index blocks. ** ** The wal-index header contains the total number of frames within the WAL -** in the the mxFrame field. +** in the mxFrame field. ** ** Each index block except for the first contains information on ** HASHTABLE_NPAGE frames. The first index block contains information on diff --git a/test/crash.test b/test/crash.test index f644dcaf73..c1901daec6 100644 --- a/test/crash.test +++ b/test/crash.test @@ -119,7 +119,7 @@ do_test crash-1.11 { } {0 {}} #-------------------------------------------------------------------------- -# The following tests test recovery when both the database file and the the +# The following tests test recovery when both the database file and the # journal file contain corrupt data. This can happen after pages are # written to the database file before a transaction is committed due to # cache-pressure. diff --git a/test/journal1.test b/test/journal1.test index 2fdadfd68c..c89dd2b4c9 100644 --- a/test/journal1.test +++ b/test/journal1.test @@ -41,7 +41,7 @@ do_test journal1-1.1 { } 8 # Make changes to the database and save the journal file. -# Then delete the database. Replace the the journal file +# Then delete the database. Replace the journal file # and try to create a new database with the same name. The # old journal should not attempt to rollback into the new # database. diff --git a/test/rowid.test b/test/rowid.test index 4a9404defb..5daf581ea6 100644 --- a/test/rowid.test +++ b/test/rowid.test @@ -657,7 +657,7 @@ do_test rowid-11.4 { # Test the automatic generation of rowids when the table already contains # a rowid with the maximum value. # -# Once the the maximum rowid is taken, rowids are normally chosen at +# Once the maximum rowid is taken, rowids are normally chosen at # random. By by reseting the random number generator, we can cause # the rowid guessing loop to collide with prior rowids, and test the # loop out to its limit of 100 iterations. After 100 collisions, the diff --git a/test/wal2.test b/test/wal2.test index 22db67991f..4371e988b2 100644 --- a/test/wal2.test +++ b/test/wal2.test @@ -86,7 +86,7 @@ proc incr_tvfs_hdr {file idx incrval} { # # 2. Attempt to read the database using the reader. Before the reader # has a chance to snapshot the wal-index header, increment one -# of the the integer fields (so that the reader ends up with a corrupted +# of the integer fields (so that the reader ends up with a corrupted # header). # # 3. Check that the reader recovers the wal-index and reads the correct From 04f2e3403f59588690ff35318c2b8f41f774b27c Mon Sep 17 00:00:00 2001 From: drh Date: Mon, 27 Aug 2012 14:39:47 +0000 Subject: [PATCH 03/13] Fix an incorrect assert in the virtual table logic - it could fire following an I/O error after sqlite3_close_v2() was added. FossilOrigin-Name: 4ccc18e999c51f7f6637ee48ccca35c7706bfe6d --- manifest | 14 +++++++------- manifest.uuid | 2 +- src/vtab.c | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/manifest b/manifest index ff4a421396..1fb35a2d74 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\sall\sknown\sinstances\sof\s'repeated\sthe'\sstyle\stypos\sin\scomments.\s\sNo\schanges\sto\scode. -D 2012-08-25T10:01:29.456 +C Fix\san\sincorrect\sassert\sin\sthe\svirtual\stable\slogic\s-\sit\scould\sfire\sfollowing\nan\sI/O\serror\safter\ssqlite3_close_v2()\swas\sadded. +D 2012-08-27T14:39:47.359 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in abd5c10d21d1395f140d9e50ea999df8fa4d6376 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -246,7 +246,7 @@ F src/vdbeblob.c 32f2a4899d67f69634ea4dd93e3f651936d732cb F src/vdbemem.c cb55e84b8e2c15704968ee05f0fae25883299b74 F src/vdbesort.c 0dc1b274dcb4d4c8e71b0b2b15261f286caba39b F src/vdbetrace.c 8bd5da325fc90f28464335e4cc4ad1407fe30835 -F src/vtab.c bb8ea3a26608bb1357538a5d2fc72beba6638998 +F src/vtab.c d2c54fd22aa83eb34fc6f7cd9b097f2fc2b1e9de F src/wal.c 5acb3e7bbd31f10ba39acad9ce6b399055337a9d F src/wal.h 29c197540b19044e6cd73487017e5e47a1d3dac6 F src/walker.c 3d75ba73de15e0f8cd0737643badbeb0e002f07b @@ -1013,7 +1013,7 @@ F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/win/sqlite.vsix 67d8a99aceb56384a81b3f30d6c71743146d2cc9 -P 929b51840b83ee1ca5add8fe430913e7c4e2a3d6 -R 6e6b1c39535d5b3d0db6b2f4f5ffabb4 -U mistachkin -Z b0c2ec5ca51055c07cc58e9bae28b36c +P 9b19b847533f944f289d93dcdba29c0d67bf251c +R 82ed09528ad5e2b2f9698e3182c607ef +U drh +Z 34bc59f1ddfbd35ac1cc9f60ac6109f9 diff --git a/manifest.uuid b/manifest.uuid index 39177dde0c..3077044ec4 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -9b19b847533f944f289d93dcdba29c0d67bf251c \ No newline at end of file +4ccc18e999c51f7f6637ee48ccca35c7706bfe6d \ No newline at end of file diff --git a/src/vtab.c b/src/vtab.c index 0e082a05d9..50d576fc38 100644 --- a/src/vtab.c +++ b/src/vtab.c @@ -131,7 +131,7 @@ void sqlite3VtabUnlock(VTable *pVTab){ assert( db ); assert( pVTab->nRef>0 ); - assert( sqlite3SafetyCheckOk(db) ); + assert( db->magic==SQLITE_MAGIC_OPEN || db->magic==SQLITE_MAGIC_ZOMBIE ); pVTab->nRef--; if( pVTab->nRef==0 ){ From 67ceaa6b9bdc3ace722213c2ae4f9a95b8fa694e Mon Sep 17 00:00:00 2001 From: drh Date: Mon, 27 Aug 2012 21:19:03 +0000 Subject: [PATCH 04/13] Add to #undef statements to the command-line shell, go make sure that the macros definitions that follow do not collide with system definitions. FossilOrigin-Name: 24420d6d2077d745cc26dd269e76b48c8a3eeb3c --- manifest | 12 ++++++------ manifest.uuid | 2 +- src/shell.c | 2 ++ 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/manifest b/manifest index 1fb35a2d74..d3c4630ea2 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\san\sincorrect\sassert\sin\sthe\svirtual\stable\slogic\s-\sit\scould\sfire\sfollowing\nan\sI/O\serror\safter\ssqlite3_close_v2()\swas\sadded. -D 2012-08-27T14:39:47.359 +C Add\sto\s#undef\sstatements\sto\sthe\scommand-line\sshell,\sgo\smake\ssure\sthat\sthe\nmacros\sdefinitions\sthat\sfollow\sdo\snot\scollide\swith\ssystem\sdefinitions. +D 2012-08-27T21:19:03.083 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in abd5c10d21d1395f140d9e50ea999df8fa4d6376 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -177,7 +177,7 @@ F src/random.c cd4a67b3953b88019f8cd4ccd81394a8ddfaba50 F src/resolve.c 9e28280ec98035f31900fdd1db01f86f68ca6c32 F src/rowset.c 64655f1a627c9c212d9ab497899e7424a34222e0 F src/select.c 7c62350de1d619d058030f8dc2b11a95cfde77ac -F src/shell.c 076e1c90d594644f36027c8ecff9a392cf2d3a06 +F src/shell.c 87953c5d9c73d9494db97d1607e2e2280418f261 F src/sqlite.h.in b20d50c7efe592aa9420386937c26fe8efd9e0d1 F src/sqlite3ext.h 6904f4aadf976f95241311fbffb00823075d9477 F src/sqliteInt.h 053e03a532beb909ead2df0721db67cdb4c48ae8 @@ -1013,7 +1013,7 @@ F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/win/sqlite.vsix 67d8a99aceb56384a81b3f30d6c71743146d2cc9 -P 9b19b847533f944f289d93dcdba29c0d67bf251c -R 82ed09528ad5e2b2f9698e3182c607ef +P 4ccc18e999c51f7f6637ee48ccca35c7706bfe6d +R 740204f7686a3b17a40ffeda3efe6cd4 U drh -Z 34bc59f1ddfbd35ac1cc9f60ac6109f9 +Z 48561ad81823df9fc82c051aa08e231e diff --git a/manifest.uuid b/manifest.uuid index 3077044ec4..e7779398bf 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -4ccc18e999c51f7f6637ee48ccca35c7706bfe6d \ No newline at end of file +24420d6d2077d745cc26dd269e76b48c8a3eeb3c \ No newline at end of file diff --git a/src/shell.c b/src/shell.c index baedcceb59..a17d966245 100644 --- a/src/shell.c +++ b/src/shell.c @@ -64,7 +64,9 @@ # include #define isatty(h) _isatty(h) #define access(f,m) _access((f),(m)) +#undef popen #define popen(a,b) _popen((a),(b)) +#undef pclose #define pclose(x) _pclose(x) #else /* Make sure isatty() has a prototype. From 40e6319b61d85a3507f8069b2d68ae9fda76a253 Mon Sep 17 00:00:00 2001 From: mistachkin Date: Tue, 28 Aug 2012 00:09:58 +0000 Subject: [PATCH 05/13] Update API docs to include notes about the WinRT temporary directory. No changes to code. FossilOrigin-Name: eaeeb0699297dde824788e2907a0cfd2acd8f642 --- manifest | 14 +++++++------- manifest.uuid | 2 +- src/sqlite.h.in | 24 ++++++++++++++++++++++++ 3 files changed, 32 insertions(+), 8 deletions(-) diff --git a/manifest b/manifest index d3c4630ea2..8b05204af1 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Add\sto\s#undef\sstatements\sto\sthe\scommand-line\sshell,\sgo\smake\ssure\sthat\sthe\nmacros\sdefinitions\sthat\sfollow\sdo\snot\scollide\swith\ssystem\sdefinitions. -D 2012-08-27T21:19:03.083 +C Update\sAPI\sdocs\sto\sinclude\snotes\sabout\sthe\sWinRT\stemporary\sdirectory.\s\sNo\schanges\sto\scode. +D 2012-08-28T00:09:58.692 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in abd5c10d21d1395f140d9e50ea999df8fa4d6376 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -178,7 +178,7 @@ F src/resolve.c 9e28280ec98035f31900fdd1db01f86f68ca6c32 F src/rowset.c 64655f1a627c9c212d9ab497899e7424a34222e0 F src/select.c 7c62350de1d619d058030f8dc2b11a95cfde77ac F src/shell.c 87953c5d9c73d9494db97d1607e2e2280418f261 -F src/sqlite.h.in b20d50c7efe592aa9420386937c26fe8efd9e0d1 +F src/sqlite.h.in 53a8235ebece1090111da51f18833bdf3fbd869c F src/sqlite3ext.h 6904f4aadf976f95241311fbffb00823075d9477 F src/sqliteInt.h 053e03a532beb909ead2df0721db67cdb4c48ae8 F src/sqliteLimit.h 164b0e6749d31e0daa1a4589a169d31c0dec7b3d @@ -1013,7 +1013,7 @@ F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/win/sqlite.vsix 67d8a99aceb56384a81b3f30d6c71743146d2cc9 -P 4ccc18e999c51f7f6637ee48ccca35c7706bfe6d -R 740204f7686a3b17a40ffeda3efe6cd4 -U drh -Z 48561ad81823df9fc82c051aa08e231e +P 24420d6d2077d745cc26dd269e76b48c8a3eeb3c +R 4d7c239911bd7fa3f3e3c10e34cdda68 +U mistachkin +Z 594734f9dc4d43e32a96faebd1a64aa9 diff --git a/manifest.uuid b/manifest.uuid index e7779398bf..56e6b3eab0 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -24420d6d2077d745cc26dd269e76b48c8a3eeb3c \ No newline at end of file +eaeeb0699297dde824788e2907a0cfd2acd8f642 \ No newline at end of file diff --git a/src/sqlite.h.in b/src/sqlite.h.in index 894c6b86fe..11406afacd 100644 --- a/src/sqlite.h.in +++ b/src/sqlite.h.in @@ -2662,6 +2662,12 @@ void sqlite3_progress_handler(sqlite3*, int, int(*)(void*), void*); ** codepage is currently defined. Filenames containing international ** characters must be converted to UTF-8 prior to passing them into ** sqlite3_open() or sqlite3_open_v2(). +** +** Note to Windows Runtime users: The temporary directory must be set +** prior to calling sqlite3_open() or sqlite3_open_v2(). Otherwise, various +** features that require the use of temporary files may fail. +** +** See also: [sqlite3_temp_directory] */ int sqlite3_open( const char *filename, /* Database filename (UTF-8) */ @@ -4466,6 +4472,24 @@ int sqlite3_sleep(int); ** Hence, if this variable is modified directly, either it should be ** made NULL or made to point to memory obtained from [sqlite3_malloc] ** or else the use of the [temp_store_directory pragma] should be avoided. +** +** Note to Windows Runtime users: The temporary directory must be set +** prior to calling [sqlite3_open] or [sqlite3_open_v2]. Otherwise, various +** features that require the use of temporary files may fail. Here is an +** example of how to do this using C++ with the Windows Runtime: +** +**
    +** LPCWSTR zPath = Windows::Storage::ApplicationData::Current->
    +**     TemporaryFolder->Path->Data();
    +**
    +** char zPathBuf[MAX_PATH + 1];
    +** memset(zPathBuf, 0, sizeof(zPathBuf));
    +**
    +** WideCharToMultiByte(CP_UTF8, 0, zPath, -1, zPathBuf, sizeof(zPathBuf),
    +**     NULL, NULL);
    +**
    +** sqlite3_temp_directory = sqlite3_mprintf("%s", zPathBuf);
    +** 
    */ SQLITE_EXTERN char *sqlite3_temp_directory; From 7a5d80e929607f986717f438c78245f0b19e337d Mon Sep 17 00:00:00 2001 From: drh Date: Tue, 28 Aug 2012 00:17:56 +0000 Subject: [PATCH 06/13] Formatting changes to the C code example in the documentation for sqlite3_temp_directory(). No changes to code. FossilOrigin-Name: 5b4b39788ed9ac5962a17315d5549fc5e3f38c5e --- manifest | 14 +++++++------- manifest.uuid | 2 +- src/sqlite.h.in | 9 +++------ 3 files changed, 11 insertions(+), 14 deletions(-) diff --git a/manifest b/manifest index 8b05204af1..ef819c71f2 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Update\sAPI\sdocs\sto\sinclude\snotes\sabout\sthe\sWinRT\stemporary\sdirectory.\s\sNo\schanges\sto\scode. -D 2012-08-28T00:09:58.692 +C Formatting\schanges\sto\sthe\sC\scode\sexample\sin\sthe\sdocumentation\sfor\nsqlite3_temp_directory().\s\sNo\schanges\sto\scode. +D 2012-08-28T00:17:56.511 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in abd5c10d21d1395f140d9e50ea999df8fa4d6376 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -178,7 +178,7 @@ F src/resolve.c 9e28280ec98035f31900fdd1db01f86f68ca6c32 F src/rowset.c 64655f1a627c9c212d9ab497899e7424a34222e0 F src/select.c 7c62350de1d619d058030f8dc2b11a95cfde77ac F src/shell.c 87953c5d9c73d9494db97d1607e2e2280418f261 -F src/sqlite.h.in 53a8235ebece1090111da51f18833bdf3fbd869c +F src/sqlite.h.in c447d35212736c4c77d86bc2d00f6cf4d4c12131 F src/sqlite3ext.h 6904f4aadf976f95241311fbffb00823075d9477 F src/sqliteInt.h 053e03a532beb909ead2df0721db67cdb4c48ae8 F src/sqliteLimit.h 164b0e6749d31e0daa1a4589a169d31c0dec7b3d @@ -1013,7 +1013,7 @@ F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/win/sqlite.vsix 67d8a99aceb56384a81b3f30d6c71743146d2cc9 -P 24420d6d2077d745cc26dd269e76b48c8a3eeb3c -R 4d7c239911bd7fa3f3e3c10e34cdda68 -U mistachkin -Z 594734f9dc4d43e32a96faebd1a64aa9 +P eaeeb0699297dde824788e2907a0cfd2acd8f642 +R b192678e340c5e8aa627ed43b1e2a254 +U drh +Z e9503f56b6779700b7164ab0051475d4 diff --git a/manifest.uuid b/manifest.uuid index 56e6b3eab0..90568dbecb 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -eaeeb0699297dde824788e2907a0cfd2acd8f642 \ No newline at end of file +5b4b39788ed9ac5962a17315d5549fc5e3f38c5e \ No newline at end of file diff --git a/src/sqlite.h.in b/src/sqlite.h.in index 11406afacd..9a31e22773 100644 --- a/src/sqlite.h.in +++ b/src/sqlite.h.in @@ -4480,14 +4480,11 @@ int sqlite3_sleep(int); ** **
     ** LPCWSTR zPath = Windows::Storage::ApplicationData::Current->
    -**     TemporaryFolder->Path->Data();
    -**
    -** char zPathBuf[MAX_PATH + 1];
    +**       TemporaryFolder->Path->Data();
    +** char zPathBuf[MAX_PATH + 1];
     ** memset(zPathBuf, 0, sizeof(zPathBuf));
    -**
     ** WideCharToMultiByte(CP_UTF8, 0, zPath, -1, zPathBuf, sizeof(zPathBuf),
    -**     NULL, NULL);
    -**
    +**       NULL, NULL);
     ** sqlite3_temp_directory = sqlite3_mprintf("%s", zPathBuf);
     ** 
    */ From 52fd8e1d0daea6db726d38137129a55ff96edd8f Mon Sep 17 00:00:00 2001 From: mistachkin Date: Tue, 28 Aug 2012 01:44:13 +0000 Subject: [PATCH 07/13] Enable the use of a simpler command line when cross-compiling in the MSVC build environment. FossilOrigin-Name: 8ade136a038ee71d741af4a9f9e692fdff4e7911 --- Makefile.msc | 16 ++++++++++++++++ manifest | 14 +++++++------- manifest.uuid | 2 +- 3 files changed, 24 insertions(+), 8 deletions(-) diff --git a/Makefile.msc b/Makefile.msc index cf17d4df66..9a160c4287 100644 --- a/Makefile.msc +++ b/Makefile.msc @@ -19,6 +19,12 @@ USE_ICU = 0 # USE_CRT_DLL = 0 +# Set this non-0 to attempt setting the native compiler automatically +# for cross-compiling the command line tools needed during the compilation +# process. +# +XCOMPILE = 0 + # Set this non-0 to use the native libraries paths for cross-compiling # the command line tools needed during the compilation process. # @@ -85,11 +91,21 @@ LD = link.exe # line similar to the following could be used (all on one line): # # nmake /f Makefile.msc sqlite3.dll +# XCOMPILE=1 USE_NATIVE_LIBPATHS=1 +# +# Alternatively, the full path and file name to the compiler binary for the +# platform the compilation process is taking place may be specified (all on +# one line): +# +# nmake /f Makefile.msc sqlite3.dll # "NCC=""%VCINSTALLDIR%\bin\cl.exe""" # USE_NATIVE_LIBPATHS=1 # !IFDEF NCC NCC = $(NCC:\\=\) +!ELSEIF $(XCOMPILE)!=0 +NCC = "$(VCINSTALLDIR)\bin\cl.exe" +NCC = $(NCC:\\=\) !ELSE NCC = $(CC) !ENDIF diff --git a/manifest b/manifest index ef819c71f2..3623ba1bd3 100644 --- a/manifest +++ b/manifest @@ -1,9 +1,9 @@ -C Formatting\schanges\sto\sthe\sC\scode\sexample\sin\sthe\sdocumentation\sfor\nsqlite3_temp_directory().\s\sNo\schanges\sto\scode. -D 2012-08-28T00:17:56.511 +C Enable\sthe\suse\sof\sa\ssimpler\scommand\sline\swhen\scross-compiling\sin\sthe\sMSVC\sbuild\senvironment. +D 2012-08-28T01:44:13.631 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in abd5c10d21d1395f140d9e50ea999df8fa4d6376 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 -F Makefile.msc 45dd3579cae399d73e3f5eab36f6f332783072e5 +F Makefile.msc f00ec5dc2e78eb63d32c3125ab7a999aa7fcf924 F Makefile.vxworks 879f034a64062a364b21000266bbd5bc6e0c19b9 F README cd04a36fbc7ea56932a4052d7d0b7f09f27c33d6 F VERSION a71848df48082f1d6585d4b0819d530fc455485d @@ -1013,7 +1013,7 @@ F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/win/sqlite.vsix 67d8a99aceb56384a81b3f30d6c71743146d2cc9 -P eaeeb0699297dde824788e2907a0cfd2acd8f642 -R b192678e340c5e8aa627ed43b1e2a254 -U drh -Z e9503f56b6779700b7164ab0051475d4 +P 5b4b39788ed9ac5962a17315d5549fc5e3f38c5e +R 0a51fd3185f2bb057b5395e10c07c688 +U mistachkin +Z 706c5b15d500beca34f770e5dc0a20e0 diff --git a/manifest.uuid b/manifest.uuid index 90568dbecb..05a144fcdd 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -5b4b39788ed9ac5962a17315d5549fc5e3f38c5e \ No newline at end of file +8ade136a038ee71d741af4a9f9e692fdff4e7911 \ No newline at end of file From af529737248da644fb772a56c5161df633dc04f4 Mon Sep 17 00:00:00 2001 From: mistachkin Date: Tue, 28 Aug 2012 04:20:56 +0000 Subject: [PATCH 08/13] Issue a log message if the temporary directory has not been set when running on WinRT. FossilOrigin-Name: 9ee39102942d4a4830417f61f0969f29ac0282a1 --- manifest | 12 ++++++------ manifest.uuid | 2 +- src/os_win.c | 7 +++++++ 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/manifest b/manifest index 3623ba1bd3..77acc83ffa 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Enable\sthe\suse\sof\sa\ssimpler\scommand\sline\swhen\scross-compiling\sin\sthe\sMSVC\sbuild\senvironment. -D 2012-08-28T01:44:13.631 +C Issue\sa\slog\smessage\sif\sthe\stemporary\sdirectory\shas\snot\sbeen\sset\swhen\srunning\son\sWinRT. +D 2012-08-28T04:20:56.059 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in abd5c10d21d1395f140d9e50ea999df8fa4d6376 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -163,7 +163,7 @@ F src/os.c e1acdc09ff3ac2412945cca9766e2dcf4675f31c F src/os.h 027491c77d2404c0a678bb3fb06286f331eb9b57 F src/os_common.h 92815ed65f805560b66166e3583470ff94478f04 F src/os_unix.c 69b2fe66316524eebf5f1ce85c1fdfe2952307e9 -F src/os_win.c 421cfe2f2b4293a3ca9447be42fdc3ef2e8679de +F src/os_win.c 3a18cdb28120ddc1211b6496b7e1e8547672a1e3 F src/pager.c 5665fa9ecec51f11dabdfd8eefefa89391856007 F src/pager.h 8b8c9bc065a3c66769df8724dfdf492ee1aab3c5 F src/parse.y f29df90bd3adc64b33114ab1de9fb7768fcf2099 @@ -1013,7 +1013,7 @@ F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/win/sqlite.vsix 67d8a99aceb56384a81b3f30d6c71743146d2cc9 -P 5b4b39788ed9ac5962a17315d5549fc5e3f38c5e -R 0a51fd3185f2bb057b5395e10c07c688 +P 8ade136a038ee71d741af4a9f9e692fdff4e7911 +R 0fb2efee96b5058ad80340b8d86ef5c4 U mistachkin -Z 706c5b15d500beca34f770e5dc0a20e0 +Z 68b816fb6b2cb398ec0e5fa744bb47cf diff --git a/manifest.uuid b/manifest.uuid index 05a144fcdd..8719b7e2d5 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -8ade136a038ee71d741af4a9f9e692fdff4e7911 \ No newline at end of file +9ee39102942d4a4830417f61f0969f29ac0282a1 \ No newline at end of file diff --git a/src/os_win.c b/src/os_win.c index 450f80e2be..d1b787be7d 100644 --- a/src/os_win.c +++ b/src/os_win.c @@ -3590,6 +3590,13 @@ static int winOpen( assert( id!=0 ); UNUSED_PARAMETER(pVfs); +#if SQLITE_OS_WINRT + if( !sqlite3_temp_directory ){ + sqlite3_log(SQLITE_ERROR, + "sqlite3_temp_directory variable should be set for WinRT"); + } +#endif + pFile->h = INVALID_HANDLE_VALUE; /* If the second argument to this function is NULL, generate a From 67c70142d95722e0537ddd0efd4c2ff9946e9053 Mon Sep 17 00:00:00 2001 From: dan Date: Tue, 28 Aug 2012 14:45:50 +0000 Subject: [PATCH 09/13] Fix a case where SQLite was failing to detect a syntax error in queries like "SELECT ... FROM ( UNION ALL )" when and return different numbers of result columns. FossilOrigin-Name: 200a81358c3117401d2258dd06bb8d2ea4f0ef51 --- manifest | 16 ++++++++-------- manifest.uuid | 2 +- src/select.c | 7 +++++++ test/select6.test | 44 ++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 60 insertions(+), 9 deletions(-) diff --git a/manifest b/manifest index 77acc83ffa..1419d54038 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Issue\sa\slog\smessage\sif\sthe\stemporary\sdirectory\shas\snot\sbeen\sset\swhen\srunning\son\sWinRT. -D 2012-08-28T04:20:56.059 +C Fix\sa\scase\swhere\sSQLite\swas\sfailing\sto\sdetect\sa\ssyntax\serror\sin\squeries\slike\s"SELECT\s...\sFROM\s(\sUNION\sALL\s)"\swhen\s\sand\s\sreturn\sdifferent\snumbers\sof\sresult\scolumns. +D 2012-08-28T14:45:50.609 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in abd5c10d21d1395f140d9e50ea999df8fa4d6376 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -176,7 +176,7 @@ F src/printf.c 4a9f882f1c1787a8b494a2987765acf9d97ac21f F src/random.c cd4a67b3953b88019f8cd4ccd81394a8ddfaba50 F src/resolve.c 9e28280ec98035f31900fdd1db01f86f68ca6c32 F src/rowset.c 64655f1a627c9c212d9ab497899e7424a34222e0 -F src/select.c 7c62350de1d619d058030f8dc2b11a95cfde77ac +F src/select.c f843c872a97baa1594c2cc3d4c003409a7bd03af F src/shell.c 87953c5d9c73d9494db97d1607e2e2280418f261 F src/sqlite.h.in c447d35212736c4c77d86bc2d00f6cf4d4c12131 F src/sqlite3ext.h 6904f4aadf976f95241311fbffb00823075d9477 @@ -683,7 +683,7 @@ F test/select2.test 352480e0e9c66eda9c3044e412abdf5be0215b56 F test/select3.test 2ce595f8fb8e2ac10071d3b4e424cadd4634a054 F test/select4.test 00179be44e531fe04c1c3f15df216439dff2519d F test/select5.test e758b8ef94f69b111df4cb819008856655dcd535 -F test/select6.test cc25a8650cf9a4d4f74e586c45a75f9836516b18 +F test/select6.test e76bd10a56988f15726c097a5d5a7966fe82d3b2 F test/select7.test dad6f00f0d49728a879d6eb6451d4752db0b0abe F test/select8.test 391de11bdd52339c30580dabbbbe97e3e9a3c79d F test/select9.test c0ca3cd87a8ebb04de2cb1402c77df55d911a0ea @@ -1013,7 +1013,7 @@ F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/win/sqlite.vsix 67d8a99aceb56384a81b3f30d6c71743146d2cc9 -P 8ade136a038ee71d741af4a9f9e692fdff4e7911 -R 0fb2efee96b5058ad80340b8d86ef5c4 -U mistachkin -Z 68b816fb6b2cb398ec0e5fa744bb47cf +P 9ee39102942d4a4830417f61f0969f29ac0282a1 +R 964d2ea322a12f9b1ab84df9ade3057e +U dan +Z 760c5cbdabe0b897158bcd56b4671da6 diff --git a/manifest.uuid b/manifest.uuid index 8719b7e2d5..63e61cf366 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -9ee39102942d4a4830417f61f0969f29ac0282a1 \ No newline at end of file +200a81358c3117401d2258dd06bb8d2ea4f0ef51 \ No newline at end of file diff --git a/src/select.c b/src/select.c index 7762e8975d..6ec9da39a1 100644 --- a/src/select.c +++ b/src/select.c @@ -2689,6 +2689,12 @@ static void substSelect( ** operators have an implied DISTINCT which is disallowed by ** restriction (4). ** +** Also, each component of the sub-query must return the same number +** of result columns. This is actually a requirement for any compound +** SELECT statement, but all the code here does is make sure that no +** such (illegal) sub-query is flattened. The caller will detect the +** syntax error and return a detailed message. +** ** (18) If the sub-query is a compound select, then all terms of the ** ORDER by clause of the parent must be simple references to ** columns of the sub-query. @@ -2832,6 +2838,7 @@ static int flattenSubquery( if( (pSub1->selFlags & (SF_Distinct|SF_Aggregate))!=0 || (pSub1->pPrior && pSub1->op!=TK_ALL) || pSub1->pSrc->nSrc<1 + || pSub->pEList->nExpr!=pSub1->pEList->nExpr ){ return 0; } diff --git a/test/select6.test b/test/select6.test index e0ff165c55..64a8519d89 100644 --- a/test/select6.test +++ b/test/select6.test @@ -22,6 +22,7 @@ ifcapable !subquery { finish_test return } +set ::testprefix select6 do_test select6-1.0 { execsql { @@ -513,5 +514,48 @@ do_test select6-9.11 { } {2 12 3 13 4 14} +#------------------------------------------------------------------------- +# Test that if a UNION ALL sub-query that would otherwise be eligible for +# flattening consists of two or more SELECT statements that do not all +# return the same number of result columns, the error is detected. +# +do_execsql_test 10.1 { + CREATE TABLE t(i,j,k); + CREATE TABLE j(l,m); + CREATE TABLE k(o); +} + +set err [list 1 {SELECTs to the left and right of UNION ALL do not have the same number of result columns}] + +do_execsql_test 10.2 { + SELECT * FROM (SELECT * FROM t), j; +} +do_catchsql_test 10.3 { + SELECT * FROM t UNION ALL SELECT * FROM j +} $err +do_catchsql_test 10.4 { + SELECT * FROM (SELECT i FROM t UNION ALL SELECT l, m FROM j) +} $err +do_catchsql_test 10.5 { + SELECT * FROM (SELECT j FROM t UNION ALL SELECT * FROM j) +} $err +do_catchsql_test 10.6 { + SELECT * FROM (SELECT * FROM t UNION ALL SELECT * FROM j) +} $err +do_catchsql_test 10.7 { + SELECT * FROM ( + SELECT * FROM t UNION ALL + SELECT l,m,l FROM j UNION ALL + SELECT * FROM k + ) +} $err +do_catchsql_test 10.8 { + SELECT * FROM ( + SELECT * FROM k UNION ALL + SELECT * FROM t UNION ALL + SELECT l,m,l FROM j + ) +} $err + finish_test From b5b407e5abfc6748edeec7a6b5414d86cc1d23de Mon Sep 17 00:00:00 2001 From: drh Date: Wed, 29 Aug 2012 10:28:43 +0000 Subject: [PATCH 10/13] Fix a typo in a comment in vdbe.c. No changes to code. FossilOrigin-Name: 9fbe858b625a346690d5cefca3a6fa2a557bea11 --- manifest | 14 +++++++------- manifest.uuid | 2 +- src/vdbe.c | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/manifest b/manifest index 1419d54038..15938d72c8 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\sa\scase\swhere\sSQLite\swas\sfailing\sto\sdetect\sa\ssyntax\serror\sin\squeries\slike\s"SELECT\s...\sFROM\s(\sUNION\sALL\s)"\swhen\s\sand\s\sreturn\sdifferent\snumbers\sof\sresult\scolumns. -D 2012-08-28T14:45:50.609 +C Fix\sa\stypo\sin\sa\scomment\sin\svdbe.c.\s\sNo\schanges\sto\scode. +D 2012-08-29T10:28:43.112 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in abd5c10d21d1395f140d9e50ea999df8fa4d6376 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -237,7 +237,7 @@ F src/update.c 28d2d098b43a2c70dae399896ea8a02f622410ef F src/utf.c 890c67dcfcc7a74623c95baac7535aadfe265e84 F src/util.c 0af2e515dc0dabacec931bca39525f6c3f1c5455 F src/vacuum.c 587a52bb8833d7ac15af8916f25437e2575028bd -F src/vdbe.c 75da79cdcd58481825a06f045bc2f5ea3966eeae +F src/vdbe.c 9c524bded348fd0a53adc19f2d7cad76ba3442b2 F src/vdbe.h 18f581cac1f4339ec3299f3e0cc6e11aec654cdb F src/vdbeInt.h 986b6b11a13c517337355009e5438703ba5b0a40 F src/vdbeapi.c 88ea823bbcb4320f5a6607f39cd7c2d3cc4c26b1 @@ -1013,7 +1013,7 @@ F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/win/sqlite.vsix 67d8a99aceb56384a81b3f30d6c71743146d2cc9 -P 9ee39102942d4a4830417f61f0969f29ac0282a1 -R 964d2ea322a12f9b1ab84df9ade3057e -U dan -Z 760c5cbdabe0b897158bcd56b4671da6 +P 200a81358c3117401d2258dd06bb8d2ea4f0ef51 +R 8a8b2d5907076b9a2c72b99614836b85 +U drh +Z 58d7860c401fb255f3904a7a7432b3a2 diff --git a/manifest.uuid b/manifest.uuid index 63e61cf366..2e3bc9158c 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -200a81358c3117401d2258dd06bb8d2ea4f0ef51 \ No newline at end of file +9fbe858b625a346690d5cefca3a6fa2a557bea11 \ No newline at end of file diff --git a/src/vdbe.c b/src/vdbe.c index 12e7325143..1a3c412a78 100644 --- a/src/vdbe.c +++ b/src/vdbe.c @@ -656,7 +656,7 @@ int sqlite3VdbeExec( } #endif - /* On any opcode with the "out2-prerelase" tag, free any + /* On any opcode with the "out2-prerelease" tag, free any ** external allocations out of mem[p2] and set mem[p2] to be ** an undefined integer. Opcodes will either fill in the integer ** value or convert mem[p2] to a different type. From 9454876ddca5d23017a634172975261ec946d9b4 Mon Sep 17 00:00:00 2001 From: dan Date: Thu, 30 Aug 2012 11:22:16 +0000 Subject: [PATCH 11/13] Fix an out-of-bounds read in the demonstration code in test_spellfix.c. FossilOrigin-Name: 59194311543b95c2aeebe2aba83da3c29b7c6460 --- manifest | 14 +++++++------- manifest.uuid | 2 +- src/test_spellfix.c | 3 ++- 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/manifest b/manifest index 15938d72c8..935ed4bc54 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\sa\stypo\sin\sa\scomment\sin\svdbe.c.\s\sNo\schanges\sto\scode. -D 2012-08-29T10:28:43.112 +C Fix\san\sout-of-bounds\sread\sin\sthe\sdemonstration\scode\sin\stest_spellfix.c. +D 2012-08-30T11:22:16.890 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in abd5c10d21d1395f140d9e50ea999df8fa4d6376 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -221,7 +221,7 @@ F src/test_quota.h 8761e463b25e75ebc078bd67d70e39b9c817a0cb F src/test_rtree.c aba603c949766c4193f1068b91c787f57274e0d9 F src/test_schema.c 8c06ef9ddb240c7a0fcd31bc221a6a2aade58bf0 F src/test_server.c 2f99eb2837dfa06a4aacf24af24c6affdf66a84f -F src/test_spellfix.c fa83c9b4c4bdd1d41be4ad1e9241bf5a4fc9190f +F src/test_spellfix.c 0a5b5b27fc48b00f9e6fd6700f9535de538a964f F src/test_stat.c d1569c7a4839f13e80187e2c26b2ab4da2d03935 F src/test_superlock.c 2b97936ca127d13962c3605dbc9a4ef269c424cd F src/test_syscall.c a992d8c80ea91fbf21fb2dd570db40e77dd7e6ae @@ -1013,7 +1013,7 @@ F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/win/sqlite.vsix 67d8a99aceb56384a81b3f30d6c71743146d2cc9 -P 200a81358c3117401d2258dd06bb8d2ea4f0ef51 -R 8a8b2d5907076b9a2c72b99614836b85 -U drh -Z 58d7860c401fb255f3904a7a7432b3a2 +P 9fbe858b625a346690d5cefca3a6fa2a557bea11 +R 5495c22f5a8af629dc71eb4206b11e4c +U dan +Z 4194baf030b619413bfa4c9f6ef1f185 diff --git a/manifest.uuid b/manifest.uuid index 2e3bc9158c..69bb3e2c1e 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -9fbe858b625a346690d5cefca3a6fa2a557bea11 \ No newline at end of file +59194311543b95c2aeebe2aba83da3c29b7c6460 \ No newline at end of file diff --git a/src/test_spellfix.c b/src/test_spellfix.c index 68247fed0f..e5fdac42bc 100644 --- a/src/test_spellfix.c +++ b/src/test_spellfix.c @@ -222,7 +222,8 @@ static unsigned char *phoneticHash(const unsigned char *zIn, int nIn){ if( c==CCLASS_SILENT ) continue; cPrevX = c; c = className[c]; - if( c!=zOut[nOut-1] ) zOut[nOut++] = c; + assert( nOut>=0 ); + if( nOut==0 || c!=zOut[nOut-1] ) zOut[nOut++] = c; } zOut[nOut] = 0; return zOut; From 373cfbc76066762059e6348792adbe6683192f7d Mon Sep 17 00:00:00 2001 From: drh Date: Thu, 30 Aug 2012 20:24:39 +0000 Subject: [PATCH 12/13] Exclude the atof1.test test script from the valgrind permutations test since valgrind sets up the floating point hardware in an unusual way that makes atof1 fail. FossilOrigin-Name: d3cf6832a59fe4c5723761abb4c89614406b03db --- manifest | 14 +++++++------- manifest.uuid | 2 +- test/permutations.test | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/manifest b/manifest index 935ed4bc54..7437d24f91 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\san\sout-of-bounds\sread\sin\sthe\sdemonstration\scode\sin\stest_spellfix.c. -D 2012-08-30T11:22:16.890 +C Exclude\sthe\satof1.test\stest\sscript\sfrom\sthe\svalgrind\spermutations\stest\ssince\nvalgrind\ssets\sup\sthe\sfloating\spoint\shardware\sin\san\sunusual\sway\sthat\smakes\natof1\sfail. +D 2012-08-30T20:24:39.848 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in abd5c10d21d1395f140d9e50ea999df8fa4d6376 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -643,7 +643,7 @@ F test/pageropt.test 9191867ed19a2b3db6c42d1b36b6fbc657cd1ab0 F test/pagesize.test 1dd51367e752e742f58e861e65ed7390603827a0 F test/pcache.test 065aa286e722ab24f2e51792c1f093bf60656b16 F test/pcache2.test a83efe2dec0d392f814bfc998def1d1833942025 -F test/permutations.test d12fabf8abdb71b79eb6c3ef3be5e875fe790071 +F test/permutations.test 1a8ac849b659445a0b3883caf42fa2c2a289f4a1 F test/pragma.test a62f73293b0f0d79b0c87f8dd32d46fe53b0bd17 F test/pragma2.test 3a55f82b954242c642f8342b17dffc8b47472947 F test/printf.test ec9870c4dce8686a37818e0bf1aba6e6a1863552 @@ -1013,7 +1013,7 @@ F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/win/sqlite.vsix 67d8a99aceb56384a81b3f30d6c71743146d2cc9 -P 9fbe858b625a346690d5cefca3a6fa2a557bea11 -R 5495c22f5a8af629dc71eb4206b11e4c -U dan -Z 4194baf030b619413bfa4c9f6ef1f185 +P 59194311543b95c2aeebe2aba83da3c29b7c6460 +R 4c90620db5787f3ba83e3828a99de1d7 +U drh +Z ac49cf015ef6faf4d4c2cd4fd75eca92 diff --git a/manifest.uuid b/manifest.uuid index 69bb3e2c1e..e378b8bb1c 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -59194311543b95c2aeebe2aba83da3c29b7c6460 \ No newline at end of file +d3cf6832a59fe4c5723761abb4c89614406b03db \ No newline at end of file diff --git a/test/permutations.test b/test/permutations.test index c41c447a53..2ff77f9de2 100644 --- a/test/permutations.test +++ b/test/permutations.test @@ -142,7 +142,7 @@ test_suite "valgrind" -prefix "" -description { Run the "veryquick" test suite with a couple of multi-process tests (that fail under valgrind) omitted. } -files [ - test_set $allquicktests -exclude *malloc* *ioerr* *fault* wal.test + test_set $allquicktests -exclude *malloc* *ioerr* *fault* wal.test atof1.test ] -initialize { set ::G(valgrind) 1 } -shutdown { From 19038f1b79fb7d29225a5a444353846bc474a58b Mon Sep 17 00:00:00 2001 From: drh Date: Fri, 31 Aug 2012 12:31:18 +0000 Subject: [PATCH 13/13] Changes for ERROR_PATH_NOT_FOUND in addition to ERROR_FILE_NOT_FOUND in winAccess(). FossilOrigin-Name: 527340abff18aedbcb0f82ac1296a9f548e24ac4 --- manifest | 12 ++++++------ manifest.uuid | 2 +- src/os_win.c | 2 +- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/manifest b/manifest index 7437d24f91..26d0c4d7e6 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Exclude\sthe\satof1.test\stest\sscript\sfrom\sthe\svalgrind\spermutations\stest\ssince\nvalgrind\ssets\sup\sthe\sfloating\spoint\shardware\sin\san\sunusual\sway\sthat\smakes\natof1\sfail. -D 2012-08-30T20:24:39.848 +C Changes\sfor\sERROR_PATH_NOT_FOUND\sin\saddition\sto\sERROR_FILE_NOT_FOUND\sin\s\nwinAccess(). +D 2012-08-31T12:31:18.969 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in abd5c10d21d1395f140d9e50ea999df8fa4d6376 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -163,7 +163,7 @@ F src/os.c e1acdc09ff3ac2412945cca9766e2dcf4675f31c F src/os.h 027491c77d2404c0a678bb3fb06286f331eb9b57 F src/os_common.h 92815ed65f805560b66166e3583470ff94478f04 F src/os_unix.c 69b2fe66316524eebf5f1ce85c1fdfe2952307e9 -F src/os_win.c 3a18cdb28120ddc1211b6496b7e1e8547672a1e3 +F src/os_win.c 5dec8fe85ee547152075c020db72aec4382f0d0a F src/pager.c 5665fa9ecec51f11dabdfd8eefefa89391856007 F src/pager.h 8b8c9bc065a3c66769df8724dfdf492ee1aab3c5 F src/parse.y f29df90bd3adc64b33114ab1de9fb7768fcf2099 @@ -1013,7 +1013,7 @@ F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/win/sqlite.vsix 67d8a99aceb56384a81b3f30d6c71743146d2cc9 -P 59194311543b95c2aeebe2aba83da3c29b7c6460 -R 4c90620db5787f3ba83e3828a99de1d7 +P d3cf6832a59fe4c5723761abb4c89614406b03db +R 3b56b1cf438f03ed04a187d25a245ed3 U drh -Z ac49cf015ef6faf4d4c2cd4fd75eca92 +Z 950f4ab8e7c8c7fcad5f5a96fb146fb0 diff --git a/manifest.uuid b/manifest.uuid index e378b8bb1c..526f75c90c 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -d3cf6832a59fe4c5723761abb4c89614406b03db \ No newline at end of file +527340abff18aedbcb0f82ac1296a9f548e24ac4 \ No newline at end of file diff --git a/src/os_win.c b/src/os_win.c index d1b787be7d..cbf17b1517 100644 --- a/src/os_win.c +++ b/src/os_win.c @@ -3910,7 +3910,7 @@ static int winAccess( } }else{ logIoerr(cnt); - if( lastErrno!=ERROR_FILE_NOT_FOUND ){ + if( lastErrno!=ERROR_FILE_NOT_FOUND && lastErrno!=ERROR_PATH_NOT_FOUND ){ winLogError(SQLITE_IOERR_ACCESS, lastErrno, "winAccess", zFilename); sqlite3_free(zConverted); return SQLITE_IOERR_ACCESS;