-C If\sSQLITE_ALLOW_ROWID_IN_VIEW\sis\sset\sto\s2,\sthen\sall\srowids\sfor\sviews\sreturn\na\svalue\sof\sNULL.
-D 2024-04-07T18:23:30.116
+C Omit\sall\srowid-in-view\srestrictions\sfrom\sthe\sfuzzinvariant.c\stest\smodule\nas\sthey\sare\sno\slonger\snecessary,\sas\sof\sthe\sprevious\scheck-in.
+D 2024-04-07T18:36:32.081
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
F test/fuzzer1.test 3d4c4b7e547aba5e5511a2991e3e3d07166cfbb8
F test/fuzzer2.test a85ef814ce071293bce1ad8dffa217cbbaad4c14
F test/fuzzerfault.test f64c4aef4c9e9edf1d6dc0d3f1e65dcc81e67c996403c88d14f09b74807a42bc
-F test/fuzzinvariants.c 9fc6810dde21e1aee20ed7a6c8ed944ffee127cf082fc48caba398fa31c762ca
+F test/fuzzinvariants.c d89b81c3bdad7b2837f8cce645d5b563ffa965f6d819ce33f0f6d82a71c6ca9a
F test/gcfault.test 4ea410ac161e685f17b19e1f606f58514a2850e806c65b846d05f60d436c5b0d
F test/gencol1.test e169bdfa11c7ed5e9f322a98a7db3afe9e66235750b68c923efee8e1876b46ec
F test/genesis.tcl 1e2e2e8e5cc4058549a154ff1892fe5c9de19f98
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 3d5fb1ec7a0440072d6e3b957903c85d0f32b8b07207a1ef22d1a69cf5e664d1
-R 0db0e0612520e2d37c806507a6db9dae
+P 0a53dde21403aa6de11c5085c16def3f95046c5629daf2675b075e4d6683ef94
+R 950039d72c57e0f5f8da3387d03515aa
U drh
-Z 2bafcb904067739b9429bfd86a29a830
+Z decff099e336dbab63d6324042d80ad4
# Remove this line to create a well-formed Fossil manifest.
-0a53dde21403aa6de11c5085c16def3f95046c5629daf2675b075e4d6683ef94
\ No newline at end of file
+6431538f0bb3bb8606786f3c3e5c055c4bc387098dd3bdc8a94f6fda61c47f52
\ No newline at end of file
return SQLITE_OK;
}
-#ifdef SQLITE_ALLOW_ROWID_IN_VIEW
-/*
-** Return TRUE if the i-th column of pStmt might be a ROWID value.
-*/
-static int column_might_be_rowid(sqlite3_stmt *pStmt, int i){
- const char *zColName = sqlite3_column_name(pStmt, i);
- if( sqlite3_strlike("%rowid%",zColName,0)==0 ) return 1;
- if( sqlite3_strlike("%oid%",zColName,0)==0 ) return 1;
- return 0;
-}
-#endif /* SQLITE_ALLOW_ROWID_IN_VIEW */
-
-
/*
** Generate SQL used to test a statement invariant.
**
** WHERE clause. */
continue;
}
-#ifdef SQLITE_ALLOW_ROWID_IN_VIEW
- if( column_might_be_rowid(pBase,i) ){
- /* ROWID values are unreliable if SQLITE_ALLOW_ROWID_IN_VIEW is used */
- continue;
- }
-#endif
for(j=0; j<i; j++){
const char *zPrior = sqlite3_column_name(pBase, j);
if( sqlite3_stricmp(zPrior, zColName)==0 ) break;
/*
** Return true if and only if v1 and is the same as v2.
-**
-** When compiled with SQLITE_ALLOW_ROWID_IN_VIEW, and if either
-** v1 or v2 has a column name that indicates that it is a rowid
-** then a NULL value in the rowid column will compare equal to
-** an integer value in the other.
*/
static int sameValue(
sqlite3_stmt *pS1, int i1, /* Value to text on the left */
|| (t1==SQLITE_FLOAT && t2==SQLITE_INTEGER)
){
/* Comparison of numerics is ok */
-#ifdef SQLITE_ALLOW_ROWID_IN_VIEW
- }else
- if( t1==SQLITE_INTEGER
- && t2==SQLITE_NULL
- && column_might_be_rowid(pS2,i2)
- ){
- return 1;
- }else
- if( t2==SQLITE_INTEGER
- && t1==SQLITE_NULL
- && column_might_be_rowid(pS1,i1)
- ){
- return 1;
-#endif /* SQLITE_ALLOW_ROWID_IN_VIEW */
}else{
return 0;
}