From eba536e8f2aba371991ef601ac8cc15637ad522a Mon Sep 17 00:00:00 2001 From: drh <> Date: Wed, 14 Oct 2026 11:32:36 +0000 Subject: [PATCH] The previous check-in was not quite correct. Both rLhsOrig and rLhs are vectors and so neither should be freed using sqlite3ReleaseTempReg(). Indeed, neither should be freed at all since both vectors remain in use. FossilOrigin-Name: fc7b959f45a55d95c9cb37692e82b811e3ef286a6d826895dfee9a1f2abfdcc8 --- manifest | 12 ++++++------ manifest.uuid | 2 +- src/expr.c | 1 - 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/manifest b/manifest index f7e1dd4896..7ffc2a8923 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C In\scheck-in\s[8800c13deca3717c],\sfix\sa\sdouble-free\sof\sa\sbyte-code\sregister,\nresulting\sin\sthe\ssame\sregister\sbeing\son\sthe\sreusable\sregister\slist\stwice.\n[bugs:/info/2026-10-14T05:52:10Z|Bug\s2026-10-14T05:52:10Z]. -D 2026-10-14T11:22:24.884 +C The\sprevious\scheck-in\swas\snot\squite\scorrect.\s\sBoth\srLhsOrig\nand\srLhs\sare\svectors\sand\sso\sneither\sshould\sbe\sfreed\susing\nsqlite3ReleaseTempReg().\s\sIndeed,\sneither\sshould\sbe\sfreed\sat\sall\ssince\nboth\svectors\sremain\sin\suse. +D 2026-10-14T11:32:36.641 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea @@ -753,7 +753,7 @@ F src/date.c 080641f59097d14fc7341f8bc0458d273b3a62d8381916db8ccbc89c2aae07b3 F src/dbpage.c ec8590c5e7a564cef28ca3c6156521316a4d26cb572a34841b0bcb26b67b3f97 F src/dbstat.c 34d4e825fbf763640ce3dbc56910ab080495ef4a6efb48b2b1852a43d43763fc F src/delete.c 59eeca3fb88c29329afc41bb803ee568b120d9dd7470b5f38ab55cc38390b451 -F src/expr.c 6dd1f7c2ddc064a5c527df4d4a5633a0b7754c3a74d23bb1c55998b7f30bb704 +F src/expr.c c404d1908874e6f8542a81b38a5ef7985581394c34e418f7ed3798e09f4e42d1 F src/fault.c 460f3e55994363812d9d60844b2a6de88826e007 F src/fkey.c 26788ae6c785d70f9829c4176e9764447014fc73e6ba31e9f1881720a64ae7f1 F src/func.c 54d96eeafcb6ec4cff92028ea0f7bb09e27b375b248d969aeb80a61e560ef302 @@ -2287,8 +2287,8 @@ F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee F tool/warnings.sh a554d13f6e5cf3760f041b87939e3d616ec6961859c3245e8ef701d1eafc2ca2 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c -P 6399cc43b5927eaaef855fd0daab0cffc90c559266ca6ecc41ffcd5609007976 -R 7fa16d1065786f3f604e3beb0d8109f1 +P 930df67b442ed677dbe5b22afe4fb91c907c721592a8090f0a70ebea79f3a854 +R 83c22231ceefe821863301eb47a25516 U drh -Z 795830303d6a14131f1d879942ff8869 +Z fb0b9d941cdd9cc3a7cb4f99735dbd52 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 52c7fcf2bc..403f7847cf 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -930df67b442ed677dbe5b22afe4fb91c907c721592a8090f0a70ebea79f3a854 +fc7b959f45a55d95c9cb37692e82b811e3ef286a6d826895dfee9a1f2abfdcc8 diff --git a/src/expr.c b/src/expr.c index b52146a92a..77363bfbea 100644 --- a/src/expr.c +++ b/src/expr.c @@ -4263,7 +4263,6 @@ static void sqlite3ExprCodeIN( testcase( aiMap[i]!=i ); sqlite3VdbeAddOp3(v, OP_Copy, rLhsOrig+i, rLhs+aiMap[i], 0); } - sqlite3ReleaseTempReg(pParse, rLhs); } }