From: drh Date: Wed, 31 Oct 2018 19:01:13 +0000 (+0000) Subject: Add support for the SQLITE_PREPARE_NORMALIZED flag and the X-Git-Tag: version-3.26.0~62 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a60c63013ef1d02e7d63ee9b3951fec4555882da;p=thirdparty%2Fsqlite.git Add support for the SQLITE_PREPARE_NORMALIZED flag and the sqlite3_normalized_sql() when compiling with SQLITE_ENABLE_NORMALIZE. Also remove unnecessary whitespace from Makefiles. FossilOrigin-Name: 790ea39a6585ea9f4dad9e132e1fb0447ac1558f728196580d2c3edee84823f7 --- a60c63013ef1d02e7d63ee9b3951fec4555882da diff --cc manifest index e195863f8b,4cd0556450..aff8479dd8 --- a/manifest +++ b/manifest @@@ -1,10 -1,10 +1,10 @@@ - C Tweaks\sto\sthe\stest_intarray\sdocumentation\sand\stests. - D 2018-10-31T18:24:29.283 -C Add\sthe\ssqlite3_normalized_sql()\sAPI. -D 2018-10-29T17:53:23.938 ++C Add\ssupport\sfor\sthe\sSQLITE_PREPARE_NORMALIZED\sflag\sand\sthe\nsqlite3_normalized_sql()\swhen\scompiling\swith\sSQLITE_ENABLE_NORMALIZE.\nAlso\sremove\sunnecessary\swhitespace\sfrom\sMakefiles. ++D 2018-10-31T19:01:13.743 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea - F Makefile.in 48a5f9a819748dafdea471fbab8b0562c7c622038919bd9e1269a4ab3eddcd4b -F Makefile.in 783093f97550d2fd61618ca76ada6fbbfc6ec26c242a66e8c25a4d9d54cde899 ++F Makefile.in edbb6e20bb1decf65f6c64c9e61004a69bdf8afb39cdce5337c916b03dfcd1e3 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 - F Makefile.msc b54c92ab12a5487614bb9dc12d4b9b5ec3f0554f303f8da694992ac80927a2de -F Makefile.msc fd51f9eba2cc0da0c26344b7f08addc16a2094640bb60e481dcd6408b901a293 ++F Makefile.msc 5402eae167757dae275cd99c21d21d77db2ec1877c58b4f790ef747a60b95c9f F README.md 377233394b905d3b2e2b33741289e093bc93f2e7adbe00923b2c5958c9a9edee F VERSION 654da1d4053fb09ffc33a3910e6d427182a7dcdc67e934fa83de2849ac83fccb F aclocal.m4 a5c22d164aff7ed549d53a90fa56d56955281f50 @@@ -426,7 -426,7 +426,7 @@@ F ext/userauth/userauth.c f81aa5a3ecacf F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 x F ltmain.sh 3ff0879076df340d2e23ae905484d8c15d5fdea8 F magic.txt 8273bf49ba3b0c8559cb2774495390c31fd61c60 - F main.mk f32fd56b6945241905efdbe4ba41c0e016abe66f5faf5347dc51395ca457e961 -F main.mk ab2257d67e9db1fa9ef6159fadc32ef59ab24b9734cd567622d795392c3b2d83 ++F main.mk 71a3471e99c18bf5ddb9593e5ec3ecef858e97551b949401f8cff2aaba79c67c F mkso.sh fd21c06b063bb16a5d25deea1752c2da6ac3ed83 F mptest/config01.test 3c6adcbc50b991866855f1977ff172eb6d901271 F mptest/config02.test 4415dfe36c48785f751e16e32c20b077c28ae504 @@@ -445,18 -445,18 +445,18 @@@ F src/auth.c 0fac71038875693a937e506bce F src/backup.c 78d3cecfbe28230a3a9a1793e2ead609f469be43e8f486ca996006be551857ab F src/bitvec.c 17ea48eff8ba979f1f5b04cc484c7bb2be632f33 F src/btmutex.c 8acc2f464ee76324bf13310df5692a262b801808984c1b79defb2503bbafadb6 -F src/btree.c 3f5e1a03db871e627bf5da21092bf7434ecfc5c5980bbd7d45eba13341340173 +F src/btree.c 75ec3352656834ed096af95410610e7e7f16e1cdb65b0876bad49387b01d21b3 F src/btree.h febb2e817be499570b7a2e32a9bbb4b607a9234f6b84bb9ae84916d4806e96f2 F src/btreeInt.h 620ab4c7235f43572cf3ac2ac8723cbdf68073be4d29da24897c7b77dda5fd96 - F src/build.c bd47530436bcdd6c6111a44c88d6c629ebc5a6666602d1cdb9b6b26a531ee741 - F src/callback.c 36caff1e7eb7deb58572d59c41cee8f064a11d00297616995c5050ea0cfc1288 -F src/build.c 675799caa8bdd73bea8f8c268a735cb208133ce875bf5c4cbcf7280bebfb2227 ++F src/build.c 792a3246e8d080f631cb697e28f2da2ef21fa9f83a5476548f1ee4175d11cfaf + F src/callback.c 789bd33d188146f66c0dd8306472a72d1c05f71924b24a91caf6bd45cf9aba73 F src/complete.c a3634ab1e687055cd002e11b8f43eb75c17da23e - F src/ctime.c 56e2f32d2e5491c152352bd53cffc9979ee1e1b70df39ec97a90920ae420a950 + F src/ctime.c 109e58d00f62e8e71ee1eb5944ac18b90171c928ab2e082e058056e1137cc20b F src/date.c ebe1dc7c8a347117bb02570f1a931c62dd78f4a2b1b516f4837d45b7d6426957 F src/dbpage.c 4aa7f26198934dbd002e69418220eae3dbc71b010bbac32bd78faf86b52ce6c3 -F src/dbstat.c 5f96184b8a751b7c92b959b55679f56e409c3b3bbe98eaf5e43189c16d4df082 +F src/dbstat.c e042b0e7833fdacf2d5ea92c6b536962fea6aeed8b7287ca87ddfa3412bd9564 F src/delete.c 107e28d3ef8bd72fd11953374ca9107cd74e8b09c3ded076a6048742d26ce7d2 - F src/expr.c 5cee8fb79b1952689af80ed71ed16ad295f29d85de30c7592993b05cf1ec1e06 + F src/expr.c 16dee9504d0c6a09de8aa188fb0989ec3fd48b9704abd4fc80539065f2b52adc F src/fault.c 460f3e55994363812d9d60844b2a6de88826e007 F src/fkey.c 972a4ba14296bef2303a0abbad1e3d82bc3c61f9e6ce4e8e9528bdee68748812 F src/func.c 7c288b4ce309b5a8b8473514b88e1f8e69a80134509a8c0db8e39c858e367e7f @@@ -497,19 -497,19 +497,19 @@@ F src/parse.y 6840fe7c0b5eb4dd25ee5d075 F src/pcache.c 4196eb6ed3bbf00b80596c8e0b4f50e57eb7d890c19fb27a7354306abb7f983d F src/pcache.h 072f94d29281cffd99e46c1539849f248c4b56ae7684c1f36626797fee375170 F src/pcache1.c 716975564c15eb6679e97f734cec1bfd6c16ac3d4010f05f1f8e509fc7d19880 -F src/pragma.c 35efa85894f1ae533c03c64591dfc82f916ad78250591082bbae72a2811bceab -F src/pragma.h e50df79399da8c2efc6bd4b7034e242d0dc6ab2016564f08e94103367098b1e4 -F src/prepare.c bf148a889ed92589dd2e6b99b54107e8c7668ad2f69a41bb55b4bbc701fc6474 +F src/pragma.c 0bb05b1788d7af5fdc7f40f5655a79a140dece8fd2523402eb2103925e4739c2 +F src/pragma.h fdd03d78a7497f74a3f652909f945328480089189526841ae829ce7313d98d13 - F src/prepare.c 498b3bf76a508dc201f90c3e619f597630b1870bdce77eef2dbd380542a4a232 ++F src/prepare.c f81f8d707e583192c28fea0b2e19385415b7d188123b23f49b038076408d7a69 F src/printf.c 0f1177cf1dd4d7827bf64d840768514ec76409abecaca9e8b577dbd065150381 F src/random.c 80f5d666f23feb3e6665a6ce04c7197212a88384 F src/resolve.c bc8c79e56439b111e7d9415e44940951f7087e9466c3a9d664558ef0faf31073 F src/rowset.c d977b011993aaea002cab3e0bb2ce50cf346000dff94e944d547b989f4b1fe93 F src/select.c 61e867a906f140b73baf4ce7a201ad6dcba30820969f5618ee40e9a0d32c6f5f -F src/shell.c.in 248af8c0d785c98268353e58c96715313f3b091bf220d35366affc9a9c0d4e1d +F src/shell.c.in f5a89e43e1b3255fcc274f5185595f547199757e0c59e3ea938af9676e9557d4 - F src/sqlite.h.in 4b4c2f2daeeed4412ba9d81bc78092c69831fe6eda4f0ae5bf951da51a8dccec + F src/sqlite.h.in 4f95d6f484ce247fa7cbb7382641d40919cfe9c3bf8091bc462638c7bac4efea F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8 - F src/sqlite3ext.h 305adca1b5da4a33ce2db5bd236935768e951d5651bfe5560ed55cfcdbce6a63 - F src/sqliteInt.h 93692315c628c2e7e96a0e82a7edf421b0da8b03f036e0045824d9fe048eae3a + F src/sqlite3ext.h 960f1b86c3610fa23cb6a267572a97dcf286e77aa0dd3b9b23292ffaa1ea8683 -F src/sqliteInt.h be74ca8df8831848718a9ddcd71af265807ca77ef25f1d3416a7b4378c4372fb ++F src/sqliteInt.h 06d329f15c8ab0f8592cf56d9b3ec6a1d10de7bd1d93fe7a672cbb10257da89c F src/sqliteLimit.h 1513bfb7b20378aa0041e7022d04acb73525de35b80b252f1b83fedb4de6a76b F src/status.c 46e7aec11f79dad50965a5ca5fa9de009f7d6bde08be2156f1538a0a296d4d0e F src/table.c b46ad567748f24a326d9de40e5b9659f96ffff34 @@@ -1775,7 -1774,10 +1775,8 @@@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a9 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 - P e0d30c1862884049098e1fa9b7c228ff8318a40c09e2516ef2dc8db22e2048e2 - R a8dbdaf3d8135da95f287d348e87b82c -P de72a773dd3ad58a7f2233e1fc06bf60deb8892a2719ea8e9b42e7d592c1279f -R 3a0379f1d958d505b0867531ec02f91e -T *branch * normalized_sql -T *sym-normalized_sql * -T -sym-trunk * -U mistachkin -Z aed093f5ed17f4e7a3a3d3f732fe7b71 ++P 7107f0dacf4467430d1ca157cb848dde984e48e529e7d67a88b7594b0f8159c9 592b66e8058dd03a056a036e2606247c9efdb06d15eebe9bcc455f7f55e30ae6 ++R cde92f10c728686f3e1d0cbe9b72375d ++T +closed 592b66e8058dd03a056a036e2606247c9efdb06d15eebe9bcc455f7f55e30ae6 +U drh - Z 2e686887a5f05faf47cbc1f7a9bfa062 ++Z e374a7f0cb3e5d0d55cc2236a88de3b1 diff --cc manifest.uuid index e97bbedd6e,df07ff9960..e5e2eef953 --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - 7107f0dacf4467430d1ca157cb848dde984e48e529e7d67a88b7594b0f8159c9 -592b66e8058dd03a056a036e2606247c9efdb06d15eebe9bcc455f7f55e30ae6 ++790ea39a6585ea9f4dad9e132e1fb0447ac1558f728196580d2c3edee84823f7 diff --cc src/sqliteInt.h index c8a6fe90e2,5a6042b2b5..0d6761f475 --- a/src/sqliteInt.h +++ b/src/sqliteInt.h @@@ -1305,12 -1305,14 +1305,14 @@@ struct LookasideSlot ** functions use a regular table table from hash.h.) ** ** Hash each FuncDef structure into one of the FuncDefHash.a[] slots. --** Collisions are on the FuncDef.u.pHash chain. ++** Collisions are on the FuncDef.u.pHash chain. Use the SQLITE_FUNC_HASH() ++** macro to compute a hash on the function name. */ #define SQLITE_FUNC_HASH_SZ 23 struct FuncDefHash { FuncDef *a[SQLITE_FUNC_HASH_SZ]; /* Hash table for functions */ }; - + #define SQLITE_FUNC_HASH(C,L) (((C)+(L))%SQLITE_FUNC_HASH_SZ) #ifdef SQLITE_USER_AUTHENTICATION /*