]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Fix the sqlite3VdbeTypeofColumn() function so that it works correctly
authordrh <>
Tue, 6 May 2025 16:28:44 +0000 (16:28 +0000)
committerdrh <>
Tue, 6 May 2025 16:28:44 +0000 (16:28 +0000)
even when SQLITE_DEBUG is defined.

FossilOrigin-Name: 1d5021533ed688d7a815ce75b338c72f577c14554027f88a21419935a9e68239

manifest
manifest.uuid
src/vdbeaux.c

index 3c917016ba1d71ee71d03ccf82b7aa7f4fe5426c..6f38a86bb437859781eb0e5ce8ca2bf429238c03 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\sconsole-I/O\son\sWindows\sfor\sDEBUG=3\sbuilds.\s\sBroken\sby\n[925e97e6f4238f02].
-D 2025-05-06T15:39:39.220
+C Fix\sthe\ssqlite3VdbeTypeofColumn()\sfunction\sso\sthat\sit\sworks\scorrectly\neven\swhen\sSQLITE_DEBUG\sis\sdefined.
+D 2025-05-06T16:28:44.913
 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
@@ -858,7 +858,7 @@ F src/vdbe.c 6e8030369862a64e5de35cf62a53d466ee4e9d54f4cce1219eca8914b96e956c
 F src/vdbe.h 31eddcffc1d14c76c2a20fe4e137e1ee43d44f370896fae14a067052801a3625
 F src/vdbeInt.h 5446f60e89b2aa7cdf3ab0ec4e7b01b8732cd9d52d9092a0b8b1bf700768f784
 F src/vdbeapi.c 28fab30ed0acc981aecfdcaab0a421503609078e29850eb28494816682baf0a7
-F src/vdbeaux.c 72a1c99d9300a5e0adff2c708074ac1355a619664301db474a48e147418fba05
+F src/vdbeaux.c 948c379976885a073b54cc7d8ffda087dc1a1095d1f5bb8df218796f8c933ac3
 F src/vdbeblob.c b1b4032cac46b41e44b957c4d00aee9851f862dfd85ecb68116ba49884b03dfd
 F src/vdbemem.c e67d9c6484d868c879d20c70d00bf4a9058082f1d4058607ca15d50eb3aebc21
 F src/vdbesort.c 49e366d0216c782eba287bf602384e4330d2526a22f1275492d2785ce103c79b
@@ -2207,8 +2207,8 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350
 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
 F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P 38d4c94d8c7802101ef3bfb411002f9497fdbbbd2b4d3514cef5b76ffd66f75b
-R 1e4612ee633cafd93cdc9b1e36fe0eea
+P ccef4f7058928943be9204b2e53baaf791021e78e538396ba9f2a1d76323e8cf
+R f6da72e117d0748ab2dd41858929ab91
 U drh
-Z fe5bc9712ae0fa2a51da48241636dbb7
+Z 4d404117bbc4adfa4f143cc99e22f267
 # Remove this line to create a well-formed Fossil manifest.
index e2235b5bca047c3d33f6bc4aa53098e63238046e..784b197cc6e3428052725cb5f1c0a025ff317e7a 100644 (file)
@@ -1 +1 @@
-ccef4f7058928943be9204b2e53baaf791021e78e538396ba9f2a1d76323e8cf
+1d5021533ed688d7a815ce75b338c72f577c14554027f88a21419935a9e68239
index 6d36f7280a46ceba03a05021ba88c6f80cdefa69..a6798e62db5fdf79fceaa26bcae84d6e1120f3a8 100644 (file)
@@ -1306,6 +1306,9 @@ void sqlite3VdbeChangeP5(Vdbe *p, u16 p5){
 */
 void sqlite3VdbeTypeofColumn(Vdbe *p, int iDest){
   VdbeOp *pOp = sqlite3VdbeGetLastOp(p);
+#ifdef SQLITE_DEBUG
+  while( pOp->opcode==OP_ReleaseReg ) pOp--;
+#endif
   if( pOp->p3==iDest && pOp->opcode==OP_Column ){
     pOp->p5 |= OPFLAG_TYPEOFARG;
   }