From: drh <> Date: Thu, 8 Jan 2026 20:20:03 +0000 (+0000) Subject: In the reserve=N query parameter on the VACUUM INTO target file, the X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4b4d07253fe6a86cf6008b8be5fb28608b12bbea;p=thirdparty%2Fsqlite.git In the reserve=N query parameter on the VACUUM INTO target file, the parameter is a silent no-op if N is out of range. FossilOrigin-Name: 48e59a27330932cf29bcbd01080757b82ea4a03f5a9e1fa7da076dbfcb7f60e3 --- diff --git a/manifest b/manifest index eeeb15acc2..3034de32dd 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Merge\sall\sthe\slatest\strunk\schanges\sinto\sthe\sreset-reserve\sbranch. -D 2026-01-08T18:14:29.822 +C In\sthe\sreserve=N\squery\sparameter\son\sthe\sVACUUM\sINTO\starget\sfile,\sthe\nparameter\sis\sa\ssilent\sno-op\sif\sN\sis\sout\sof\srange. +D 2026-01-08T20:20:03.087 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea @@ -803,7 +803,7 @@ F src/update.c 3e5e7ff66fa19ebe4d1b113d480639a24cc1175adbefabbd1a948a07f28e37cf F src/upsert.c 215328c3f91623c520ec8672c44323553f12caeb4f01b1090ebdca99fdf7b4f1 F src/utf.c 7267c3fb9e2467020507601af3354c2446c61f444387e094c779dccd5ca62165 F src/util.c 36fb1150062957280777655976f3f9a75db236cb8207a0770ceae8d5ec17fcd3 -F src/vacuum.c 09196d1d36d260cc73f4d1079fe6c9c228f879a559fe477cbb6c36b1a85c0d13 +F src/vacuum.c d3d35d8ae893d419ade5fa196d761a83bddcbb62137a1a157ae751ef38b26e82 F src/vdbe.c b44c366e83412d3b8c190feb1f029b7d02e1bd69252a57b32f195107f0d03964 F src/vdbe.h 966d0677a540b7ea6549b7c4e1312fc0d830fce3a235a58c801f2cc31cf5ecf9 F src/vdbeInt.h 2aaeb6df2938b181b4700a9328688a3986f2bba71e8b96f6a80671316618fa49 @@ -2191,8 +2191,8 @@ F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee F tool/warnings.sh d924598cf2f55a4ecbc2aeb055c10bd5f48114793e7ba25f9585435da29e7e98 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c -P 9cec3b67d95c145c968c560e8b3d2c33896b4b5b6c86c61350263764bb616c43 6fafd010de2d9820f77ee6d2a5f0a7ab1260872d09e95b6932c959ef017aaa77 -R 9d283fb18177ce4fdf0022b4cfb348c6 +P 6e5f1fbaec775db5c5e90b29cfa0820c9f4d560b36c063b504ef55a6c3a65bdc +R 2057b8cf3e20a6aed387d01704acf0f8 U drh -Z b61dc34a2e46333735fdcd406d74e690 +Z 5448002b9d896cf0a3d3ddecc197c13a # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 7a635bf830..def77da77b 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -6e5f1fbaec775db5c5e90b29cfa0820c9f4d560b36c063b504ef55a6c3a65bdc +48e59a27330932cf29bcbd01080757b82ea4a03f5a9e1fa7da076dbfcb7f60e3 diff --git a/src/vacuum.c b/src/vacuum.c index 5edf8300a6..70e62e1ef1 100644 --- a/src/vacuum.c +++ b/src/vacuum.c @@ -251,10 +251,9 @@ SQLITE_NOINLINE int sqlite3RunVacuum( ** "reserve=N" query parameter is present, reset the reserve to the ** amount specified, if the amount is within range */ zFilename = sqlite3BtreeGetFilename(pTemp); - if( zFilename ){ - nRes = (int)sqlite3_uri_int64(zFilename, "reserve", nRes); - if( nRes<0 ) nRes = 0; - if( nRes>255 ) nRes = 255; + if( ALWAYS(zFilename) ){ + int nNew = (int)sqlite3_uri_int64(zFilename, "reserve", nRes); + if( nNew>=0 && nNew<=255 ) nRes = nNew; } }