mirror of
				https://github.com/sqlite/sqlite.git
				synced 2025-11-03 16:53:36 +03:00 
			
		
		
		
	Merge recent fixes from trunk.
FossilOrigin-Name: 4a343698b4ec3364b0eecb7fa074512ecac8b586aff1f977ca77f215e96e0ce5
This commit is contained in:
		
							
								
								
									
										18
									
								
								configure
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										18
									
								
								configure
									
									
									
									
										vendored
									
									
								
							@@ -1,6 +1,6 @@
 | 
			
		||||
#! /bin/sh
 | 
			
		||||
# Guess values for system-dependent variables and create Makefiles.
 | 
			
		||||
# Generated by GNU Autoconf 2.69 for sqlite 3.35.3.
 | 
			
		||||
# Generated by GNU Autoconf 2.69 for sqlite 3.36.0.
 | 
			
		||||
#
 | 
			
		||||
#
 | 
			
		||||
# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
 | 
			
		||||
@@ -726,8 +726,8 @@ MAKEFLAGS=
 | 
			
		||||
# Identity of this package.
 | 
			
		||||
PACKAGE_NAME='sqlite'
 | 
			
		||||
PACKAGE_TARNAME='sqlite'
 | 
			
		||||
PACKAGE_VERSION='3.35.3'
 | 
			
		||||
PACKAGE_STRING='sqlite 3.35.3'
 | 
			
		||||
PACKAGE_VERSION='3.36.0'
 | 
			
		||||
PACKAGE_STRING='sqlite 3.36.0'
 | 
			
		||||
PACKAGE_BUGREPORT=''
 | 
			
		||||
PACKAGE_URL=''
 | 
			
		||||
 | 
			
		||||
@@ -1467,7 +1467,7 @@ if test "$ac_init_help" = "long"; then
 | 
			
		||||
  # Omit some internal or obsolete options to make the list less imposing.
 | 
			
		||||
  # This message is too long to be a string in the A/UX 3.1 sh.
 | 
			
		||||
  cat <<_ACEOF
 | 
			
		||||
\`configure' configures sqlite 3.35.3 to adapt to many kinds of systems.
 | 
			
		||||
\`configure' configures sqlite 3.36.0 to adapt to many kinds of systems.
 | 
			
		||||
 | 
			
		||||
Usage: $0 [OPTION]... [VAR=VALUE]...
 | 
			
		||||
 | 
			
		||||
@@ -1532,7 +1532,7 @@ fi
 | 
			
		||||
 | 
			
		||||
if test -n "$ac_init_help"; then
 | 
			
		||||
  case $ac_init_help in
 | 
			
		||||
     short | recursive ) echo "Configuration of sqlite 3.35.3:";;
 | 
			
		||||
     short | recursive ) echo "Configuration of sqlite 3.36.0:";;
 | 
			
		||||
   esac
 | 
			
		||||
  cat <<\_ACEOF
 | 
			
		||||
 | 
			
		||||
@@ -1660,7 +1660,7 @@ fi
 | 
			
		||||
test -n "$ac_init_help" && exit $ac_status
 | 
			
		||||
if $ac_init_version; then
 | 
			
		||||
  cat <<\_ACEOF
 | 
			
		||||
sqlite configure 3.35.3
 | 
			
		||||
sqlite configure 3.36.0
 | 
			
		||||
generated by GNU Autoconf 2.69
 | 
			
		||||
 | 
			
		||||
Copyright (C) 2012 Free Software Foundation, Inc.
 | 
			
		||||
@@ -2079,7 +2079,7 @@ cat >config.log <<_ACEOF
 | 
			
		||||
This file contains any messages produced by compilers while
 | 
			
		||||
running configure, to aid debugging if configure makes a mistake.
 | 
			
		||||
 | 
			
		||||
It was created by sqlite $as_me 3.35.3, which was
 | 
			
		||||
It was created by sqlite $as_me 3.36.0, which was
 | 
			
		||||
generated by GNU Autoconf 2.69.  Invocation command line was
 | 
			
		||||
 | 
			
		||||
  $ $0 $@
 | 
			
		||||
@@ -12378,7 +12378,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 | 
			
		||||
# report actual input values of CONFIG_FILES etc. instead of their
 | 
			
		||||
# values after options handling.
 | 
			
		||||
ac_log="
 | 
			
		||||
This file was extended by sqlite $as_me 3.35.3, which was
 | 
			
		||||
This file was extended by sqlite $as_me 3.36.0, which was
 | 
			
		||||
generated by GNU Autoconf 2.69.  Invocation command line was
 | 
			
		||||
 | 
			
		||||
  CONFIG_FILES    = $CONFIG_FILES
 | 
			
		||||
@@ -12444,7 +12444,7 @@ _ACEOF
 | 
			
		||||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 | 
			
		||||
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 | 
			
		||||
ac_cs_version="\\
 | 
			
		||||
sqlite config.status 3.35.3
 | 
			
		||||
sqlite config.status 3.36.0
 | 
			
		||||
configured by $0, generated by GNU Autoconf 2.69,
 | 
			
		||||
  with options \\"\$ac_cs_config\\"
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										22
									
								
								manifest
									
									
									
									
									
								
							
							
						
						
									
										22
									
								
								manifest
									
									
									
									
									
								
							@@ -1,5 +1,5 @@
 | 
			
		||||
C Use\sthe\scanonical\sname,\snot\sthe\sAS\sname,\swhen\sshowing\sthe\sMATERIALIZE\sor\nCO-ROUTINE\slines\sfor\sa\sCTE.
 | 
			
		||||
D 2021-03-20T15:46:01.337
 | 
			
		||||
C Merge\srecent\sfixes\sfrom\strunk.
 | 
			
		||||
D 2021-03-22T18:53:26.486
 | 
			
		||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 | 
			
		||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 | 
			
		||||
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
 | 
			
		||||
@@ -7,7 +7,7 @@ F Makefile.in fe6cc1db11e02b308f3ab0ec2504344697b9eaaa410fa73f48d16a143462e5d3
 | 
			
		||||
F Makefile.linux-gcc f609543700659711fbd230eced1f01353117621dccae7b9fb70daa64236c5241
 | 
			
		||||
F Makefile.msc 6b5428cef2af1288e02faeb602dabe68fbf2de7bc8a8e29c7299778ee08cd35c
 | 
			
		||||
F README.md 1514a365ffca3c138e00c5cc839906108a01011a6b082bad19b09781e3aa498a
 | 
			
		||||
F VERSION 75575cade3e93b31a84ffcb0d40de856a49bd3e4c1028dff52432bfae9806adb
 | 
			
		||||
F VERSION 8c392f6d70d82e513a0eac622bdf23c43df3e084cb630288beba8cef3012c812
 | 
			
		||||
F aclocal.m4 a5c22d164aff7ed549d53a90fa56d56955281f50
 | 
			
		||||
F art/sqlite370.eps aa97a671332b432a54e1d74ff5e8775be34200c2
 | 
			
		||||
F art/sqlite370.ico af56c1d00fee7cd4753e8631ed60703ed0fc6e90
 | 
			
		||||
@@ -34,7 +34,7 @@ F autoconf/tea/win/rules.vc c511f222b80064096b705dbeb97060ee1d6b6d63
 | 
			
		||||
F config.guess 883205ddf25b46f10c181818bf42c09da9888884af96f79e1719264345053bd6
 | 
			
		||||
F config.h.in 6376abec766e9a0785178b1823b5a587e9f1ccbc
 | 
			
		||||
F config.sub c2d0260f17f3e4bc0b6808fccf1b291cb5e9126c14fc5890efc77b9fd0175559
 | 
			
		||||
F configure 174eed3b99edc1c897fe32638c5b4068d4abfb282dc545ccc3ee92a472f73d7a x
 | 
			
		||||
F configure c658869fc056a2460a2212fb2960e410cd24e3fb9c55640fbc78d15b48810936 x
 | 
			
		||||
F configure.ac 4e4b58b32f88c8da9914a2f2c3158f80e69907eccc019fcc7e3ba14ffd91c640
 | 
			
		||||
F contrib/sqlitecon.tcl 210a913ad63f9f991070821e599d600bd913e0ad
 | 
			
		||||
F doc/F2FS.txt c1d4a0ae9711cfe0e1d8b019d154f1c29e0d3abfe820787ba1e9ed7691160fcd
 | 
			
		||||
@@ -486,7 +486,7 @@ F src/btmutex.c 8acc2f464ee76324bf13310df5692a262b801808984c1b79defb2503bbafadb6
 | 
			
		||||
F src/btree.c cfd2a37794532d765e235a2550ad2732924a6d06b07a3bc9f6a71750e3b3cca1
 | 
			
		||||
F src/btree.h 096cc53baa58be22b02c896d1cf933c38cfc6d65f9253c1367ece8cc88a24de5
 | 
			
		||||
F src/btreeInt.h 7bc15a24a02662409ebcd6aeaa1065522d14b7fda71573a2b0568b458f514ae0
 | 
			
		||||
F src/build.c ef2a6632323b5705febb2b2fe14ab87068fbc8d17a3c70937e110b8a24113306
 | 
			
		||||
F src/build.c 06089aaf769ec1e91d1ba607442aa32c22aeb97200d47fe405ceb373adbdf2d7
 | 
			
		||||
F src/callback.c d0b853dd413255d2e337b34545e54d888ea02f20da5ad0e63585b389624c4a6c
 | 
			
		||||
F src/complete.c a3634ab1e687055cd002e11b8f43eb75c17da23e
 | 
			
		||||
F src/ctime.c 2a322b9a3d75771fb4d99e0702851f4f68dda982507a0f798eefb0712969a410
 | 
			
		||||
@@ -503,7 +503,7 @@ F src/hash.c 8d7dda241d0ebdafb6ffdeda3149a412d7df75102cecfc1021c98d6219823b19
 | 
			
		||||
F src/hash.h 9d56a9079d523b648774c1784b74b89bd93fac7b365210157482e4319a468f38
 | 
			
		||||
F src/hwtime.h cb1d7e3e1ed94b7aa6fde95ae2c2daccc3df826be26fc9ed7fd90d1750ae6144
 | 
			
		||||
F src/in-operator.md 10cd8f4bcd225a32518407c2fb2484089112fd71
 | 
			
		||||
F src/insert.c b73e6ca39a1ff5bbdb36fbc1600e922fad8e69e1a34e6eea947e18f1aa8bf838
 | 
			
		||||
F src/insert.c f8d462ab6174a2c30476b5a1fc77f4d66ce7d9dd45c994966b9f4445db1131f0
 | 
			
		||||
F src/legacy.c d7874bc885906868cd51e6c2156698f2754f02d9eee1bae2d687323c3ca8e5aa
 | 
			
		||||
F src/loadext.c 8c9c8cd2bd8eecdb06d9b6e89de7e9e65bae45cc8fc33609cc74023a5c296067
 | 
			
		||||
F src/main.c 2a7ece3a67c646e5fe9984ffe0277d6a76f80ce9715bf2faa591d8cb66b9d913
 | 
			
		||||
@@ -543,7 +543,7 @@ F src/random.c 80f5d666f23feb3e6665a6ce04c7197212a88384
 | 
			
		||||
F src/resolve.c dd47248c2c914feb0d4428c27d782e2723971d32cfa5536f49306d080df4d45a
 | 
			
		||||
F src/rowset.c ba9515a922af32abe1f7d39406b9d35730ed65efab9443dc5702693b60854c92
 | 
			
		||||
F src/select.c fe0a11d7cf2eddd58cf6fc5f65a5faac1eb430102a3f00092673a499bfd4a50e
 | 
			
		||||
F src/shell.c.in 6592c2b1b752e5988c27112370fdf6edf9c5d36959f5134291202930cd967a4d
 | 
			
		||||
F src/shell.c.in dcce260883836c9b58847505fbccce8d5546af925046f7dacd9443e922ece036
 | 
			
		||||
F src/sqlite.h.in 3426a080ea1f222a73e3bd91e7eacbd30570a0117c03d42c6dde606f33e5e318
 | 
			
		||||
F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8
 | 
			
		||||
F src/sqlite3ext.h 61b38c073d5e1e96a3d45271b257aef27d0d13da2bea5347692ae579475cd95e
 | 
			
		||||
@@ -614,7 +614,7 @@ F src/upsert.c df8f1727d62b5987c4fd302cd4d7c0c84ae57cd65683c5a34a740dfe24039235
 | 
			
		||||
F src/utf.c ee39565f0843775cc2c81135751ddd93eceb91a673ea2c57f61c76f288b041a0
 | 
			
		||||
F src/util.c 41c7a72da1df47864faa378a1c720b38adb288c6838cb6be5594511b6287a048
 | 
			
		||||
F src/vacuum.c 492422c1463c076473bae1858799c7a0a5fe87a133d1223239447c422cd26286
 | 
			
		||||
F src/vdbe.c 95105c16c8b6decd90645ac8cf3bf0bd34e08f3371fcdaa597853547bb114360
 | 
			
		||||
F src/vdbe.c 5001a0d3003d3664615dd7ac3cedab1d51e2391b5bdd0878f40a41fdcd942e13
 | 
			
		||||
F src/vdbe.h 25dabb25c7e157b84e59260cfb5b466c3ac103ede9f36f4db371332c47601abe
 | 
			
		||||
F src/vdbeInt.h 000d9ab1ea4cb55a80de15e28f3f595645b4fddef34bca4347fb3db8031d9041
 | 
			
		||||
F src/vdbeapi.c 4a43e303ec3354c785f453e881521969378e85628278ab74ba4a9df790c0d93b
 | 
			
		||||
@@ -1910,7 +1910,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 | 
			
		||||
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 | 
			
		||||
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 | 
			
		||||
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
 | 
			
		||||
P 50fbd532602d2c316813046ed6be8be2991c281eb5f295c4c28520a0de73862c
 | 
			
		||||
R 8aabd5e1a73e25702742b13fe62bc444
 | 
			
		||||
P 1b83e232c490fe6e9f999d30399faebfac6094bf940dc21dc459ed2c97657cb2 5cee689d647087a5e796da2acb247a4f469a8b39b54f59bb4ad2386647cef1bd
 | 
			
		||||
R 48f6135c13bc2817f3ef8d214e2b8cca
 | 
			
		||||
U drh
 | 
			
		||||
Z 0b6f36b63a67910ac9a53d6251caaa0a
 | 
			
		||||
Z b8946e71be43a9c5e6dc3a673c862a7b
 | 
			
		||||
 
 | 
			
		||||
@@ -1 +1 @@
 | 
			
		||||
1b83e232c490fe6e9f999d30399faebfac6094bf940dc21dc459ed2c97657cb2
 | 
			
		||||
4a343698b4ec3364b0eecb7fa074512ecac8b586aff1f977ca77f215e96e0ce5
 | 
			
		||||
							
								
								
									
										16
									
								
								src/build.c
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								src/build.c
									
									
									
									
									
								
							@@ -4149,7 +4149,11 @@ void sqlite3CreateIndex(
 | 
			
		||||
  /* Clean up before exiting */
 | 
			
		||||
exit_create_index:
 | 
			
		||||
  if( pIndex ) sqlite3FreeIndex(db, pIndex);
 | 
			
		||||
  if( pTab ){  /* Ensure all REPLACE indexes are at the end of the list */
 | 
			
		||||
  if( pTab ){
 | 
			
		||||
    /* Ensure all REPLACE indexes on pTab are at the end of the pIndex list.
 | 
			
		||||
    ** The list was already ordered when this routine was entered, so at this
 | 
			
		||||
    ** point at most a single index (the newly added index) will be out of
 | 
			
		||||
    ** order.  So we have to reorder at most one index. */
 | 
			
		||||
    Index **ppFrom = &pTab->pIndex;
 | 
			
		||||
    Index *pThis;
 | 
			
		||||
    for(ppFrom=&pTab->pIndex; (pThis = *ppFrom)!=0; ppFrom=&pThis->pNext){
 | 
			
		||||
@@ -4163,6 +4167,16 @@ exit_create_index:
 | 
			
		||||
      }
 | 
			
		||||
      break;
 | 
			
		||||
    }
 | 
			
		||||
#ifdef SQLITE_DEBUG
 | 
			
		||||
    /* Verify that all REPLACE indexes really are now at the end
 | 
			
		||||
    ** of the index list.  In other words, no other index type ever
 | 
			
		||||
    ** comes after a REPLACE index on the list. */
 | 
			
		||||
    for(pThis = pTab->pIndex; pThis; pThis=pThis->pNext){
 | 
			
		||||
      assert( pThis->onError!=OE_Replace
 | 
			
		||||
           || pThis->pNext==0
 | 
			
		||||
           || pThis->pNext->onError==OE_Replace );
 | 
			
		||||
    }
 | 
			
		||||
#endif
 | 
			
		||||
  }
 | 
			
		||||
  sqlite3ExprDelete(db, pPIWhere);
 | 
			
		||||
  sqlite3ExprListDelete(db, pList);
 | 
			
		||||
 
 | 
			
		||||
@@ -2428,7 +2428,7 @@ static void codeWithoutRowidPreupdate(
 | 
			
		||||
  Vdbe *v = pParse->pVdbe;
 | 
			
		||||
  int r = sqlite3GetTempReg(pParse);
 | 
			
		||||
  assert( !HasRowid(pTab) );
 | 
			
		||||
  assert( 0==(pParse->db->mDbFlags & DBFLAG_Vacuum) );
 | 
			
		||||
  assert( 0==(pParse->db->mDbFlags & DBFLAG_Vacuum) || CORRUPT_DB );
 | 
			
		||||
  sqlite3VdbeAddOp2(v, OP_Integer, 0, r);
 | 
			
		||||
  sqlite3VdbeAddOp4(v, OP_Insert, iCur, regData, r, (char*)pTab, P4_TABLE);
 | 
			
		||||
  sqlite3VdbeChangeP5(v, OPFLAG_ISNOOP);
 | 
			
		||||
 
 | 
			
		||||
@@ -3063,6 +3063,7 @@ static void exec_prepared_stmt_columnar(
 | 
			
		||||
  if( rc!=SQLITE_ROW ) return;
 | 
			
		||||
  nColumn = sqlite3_column_count(pStmt);
 | 
			
		||||
  nAlloc = nColumn*4;
 | 
			
		||||
  if( nAlloc<=0 ) nAlloc = 1;
 | 
			
		||||
  azData = sqlite3_malloc64( nAlloc*sizeof(char*) );
 | 
			
		||||
  if( azData==0 ) shell_out_of_memory();
 | 
			
		||||
  for(i=0; i<nColumn; i++){
 | 
			
		||||
@@ -3102,6 +3103,7 @@ static void exec_prepared_stmt_columnar(
 | 
			
		||||
    if( n>p->actualWidth[j] ) p->actualWidth[j] = n;
 | 
			
		||||
  }
 | 
			
		||||
  if( seenInterrupt ) goto columnar_end;
 | 
			
		||||
  if( nColumn==0 ) goto columnar_end;
 | 
			
		||||
  switch( p->cMode ){
 | 
			
		||||
    case MODE_Column: {
 | 
			
		||||
      colSep = "  ";
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										11
									
								
								src/vdbe.c
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								src/vdbe.c
									
									
									
									
									
								
							@@ -4427,13 +4427,13 @@ seek_not_found:
 | 
			
		||||
**
 | 
			
		||||
** There are three possible outcomes from this opcode:<ol>
 | 
			
		||||
**
 | 
			
		||||
** <li> If after This.P1 steps, the cursor is still point to a place that
 | 
			
		||||
**      is earlier in the btree than the target row,
 | 
			
		||||
**      then fall through into the subsquence OP_SeekGE opcode.
 | 
			
		||||
** <li> If after This.P1 steps, the cursor is still pointing to a place that
 | 
			
		||||
**      is earlier in the btree than the target row, then fall through
 | 
			
		||||
**      into the subsquence OP_SeekGE opcode.
 | 
			
		||||
**
 | 
			
		||||
** <li> If the cursor is successfully moved to the target row by 0 or more
 | 
			
		||||
**      sqlite3BtreeNext() calls, then jump to This.P2, which will land just
 | 
			
		||||
**      past the OP_IdxGT opcode that follows the OP_SeekGE.
 | 
			
		||||
**      past the OP_IdxGT or OP_IdxGE opcode that follows the OP_SeekGE.
 | 
			
		||||
**
 | 
			
		||||
** <li> If the cursor ends up past the target row (indicating the the target
 | 
			
		||||
**      row does not exist in the btree) then jump to SeekOP.P2. 
 | 
			
		||||
@@ -4450,7 +4450,8 @@ case OP_SeekScan: {
 | 
			
		||||
  /* pOp->p2 points to the first instruction past the OP_IdxGT that
 | 
			
		||||
  ** follows the OP_SeekGE.  */
 | 
			
		||||
  assert( pOp->p2>=(int)(pOp-aOp)+2 );
 | 
			
		||||
  assert( aOp[pOp->p2-1].opcode==OP_IdxGT );
 | 
			
		||||
  assert( aOp[pOp->p2-1].opcode==OP_IdxGT || aOp[pOp->p2-1].opcode==OP_IdxGE );
 | 
			
		||||
  testcase( aOp[pOp->p2-1].opcode==OP_IdxGE );
 | 
			
		||||
  assert( pOp[1].p1==aOp[pOp->p2-1].p1 );
 | 
			
		||||
  assert( pOp[1].p2==aOp[pOp->p2-1].p2 );
 | 
			
		||||
  assert( pOp[1].p3==aOp[pOp->p2-1].p3 );
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user