From: drh <> Date: Sat, 18 Nov 2023 11:23:01 +0000 (+0000) Subject: Another assertion fault fix, similar to [a9443dbfbe25e588]. dbsqlfuzz X-Git-Tag: version-3.45.0~143 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b8688e131e34655491538b35aabd861181d64b6a;p=thirdparty%2Fsqlite.git Another assertion fault fix, similar to [a9443dbfbe25e588]. dbsqlfuzz 2d9af4e94aca188e0092900eec711401c5d51687. FossilOrigin-Name: 3afaeac56dff58db596360bf6f8dca97cb31405f73be8e189e8c0e6a1e5b239d --- diff --git a/manifest b/manifest index d410f901e3..7dd2b95095 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C When\sSQLITE_ENABLE_SETLK_TIMEOUT\sis\sdefined,\suse\sa\sseparate\smutex\sin\sos_unix.c\sfor\seach\sshm\slocking\sslot. -D 2023-11-17T19:01:38.613 +C Another\sassertion\sfault\sfix,\ssimilar\sto\s[a9443dbfbe25e588].\s\sdbsqlfuzz\n2d9af4e94aca188e0092900eec711401c5d51687. +D 2023-11-18T11:23:01.258 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -725,7 +725,7 @@ F src/printf.c 9da63b9ae1c14789bcae12840f5d800fd9302500cd2d62733fac77f0041b4750 F src/random.c 606b00941a1d7dd09c381d3279a058d771f406c5213c9932bbd93d5587be4b9c F src/resolve.c d017bad7ba8e778617701a0e986fdeb393d67d6afa84fb28ef4e8b8ad2acf916 F src/rowset.c 8432130e6c344b3401a8874c3cb49fefe6873fec593294de077afea2dce5ec97 -F src/select.c b3e8bb88f7a9572200fdb89cb1ef31605f45b7b2eb876d12d5102c068de905f0 +F src/select.c 85857bedd2913d888aa571755b48c54cd2e6e7fcb0087e19b226ee0368cfda1e F src/shell.c.in 297625a1ba6ea1c08bc2ea1b838b646cad309b62bf08df0e379355629404f140 F src/sqlite.h.in d93a4821d2f792467a60f7dc81268d1bb8634f40c31694ef254cab4f9921f96a F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 @@ -824,7 +824,7 @@ F test/aggnested.test ce85a6af7d59c3109e35c5f03b2cd11da1a9b1417371e2f942102d0f0d F test/aggorderby.test e6b98dbbf3ababa96892435d387de2dcf602ef02c2b848d2d817473066f154ba F test/alias.test 4529fbc152f190268a15f9384a5651bbbabc9d87 F test/all.test 2ecb8bbd52416642e41c9081182a8df05d42c75637afd4488aace78cc4b69e13 -F test/alter.test 5d3c2a662c54362193b08961f6a65178c434905ec0fda8e0a86ebd99ea04d3cc +F test/alter.test 3c00eff1e2036b9f93e9cd0f3d3e63750ac87ecb5bc71b9d7bd07cbf2ac4c494 F test/alter2.test a966ccfcddf9ce0a4e0e6ff1aca9e6e7948e0e242cd7e43fc091948521807687 F test/alter3.test ffc4ab29ce78a3517a66afd69b2730667e3471622509c283b2bd4c46f680fba3 F test/alter4.test 716caa071dd8a3c6d57225778d15d3c3cbf5e34b2e84ae44199aeb2bbf50a707 @@ -2140,9 +2140,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P 8fa3915dbfdd9a5b0fcf4d695590b3de7e7d19d2917924186ca889cd60bf0eb9 4098df9652d90f2d22d5591d915d672c5413471f7916223510ba6fd932bfdd36 -R 884416859de09ce6a1726fd2a660e929 -T +closed 4098df9652d90f2d22d5591d915d672c5413471f7916223510ba6fd932bfdd36 -U dan -Z 1df6f9700e3b6c8de400aaea321ae923 +P 64691df980cdf73ddc00aabe15baa6c018e1d76b0e87f55ab33a9348fd5680bd +R 8af98c097067dfe83db584d766ed658e +U drh +Z 7563e749ca2ec0ee7c02d0cc723df3ee # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index eeddf6891e..0be11c80c6 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -64691df980cdf73ddc00aabe15baa6c018e1d76b0e87f55ab33a9348fd5680bd \ No newline at end of file +3afaeac56dff58db596360bf6f8dca97cb31405f73be8e189e8c0e6a1e5b239d \ No newline at end of file diff --git a/src/select.c b/src/select.c index f6a9526776..e5312c7ee7 100644 --- a/src/select.c +++ b/src/select.c @@ -2319,7 +2319,8 @@ void sqlite3SubqueryColumnTypes( NameContext sNC; assert( pSelect!=0 ); - assert( (pSelect->selFlags & SF_Resolved)!=0 ); + testcase( (pSelect->selFlags & SF_Resolved)==0 ); + assert( (pSelect->selFlags & SF_Resolved)!=0 || IN_RENAME_OBJECT ); assert( pTab->nCol==pSelect->pEList->nExpr || pParse->nErr>0 ); assert( aff==SQLITE_AFF_NONE || aff==SQLITE_AFF_BLOB ); if( db->mallocFailed || IN_RENAME_OBJECT ) return; diff --git a/test/alter.test b/test/alter.test index da562ce316..9201f40adc 100644 --- a/test/alter.test +++ b/test/alter.test @@ -970,5 +970,17 @@ do_execsql_test alter-21.1 { do_execsql_test alter-21.2 { SELECT name, type FROM sqlite_schema ORDER BY name; } {e table r1 trigger t1 table} +do_execsql_test alter-21.3 { + DROP TRIGGER r1; + CREATE TRIGGER r2 AFTER INSERT ON e BEGIN + SELECT unknown_function(a ORDER BY (SELECT group_concat(a ORDER BY a) FROM (SELECT b FROM t1))) FROM t1; + END; + ALTER TABLE e RENAME TO t99; +} +do_execsql_test alter-21.4 { + SELECT name, type FROM sqlite_schema ORDER BY name; +} {r2 trigger t1 table t99 table} + + finish_test