]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Add support for the SQLITE_PREPARE_NORMALIZED flag and the
authordrh <drh@noemail.net>
Wed, 31 Oct 2018 19:01:13 +0000 (19:01 +0000)
committerdrh <drh@noemail.net>
Wed, 31 Oct 2018 19:01:13 +0000 (19:01 +0000)
sqlite3_normalized_sql() when compiling with SQLITE_ENABLE_NORMALIZE.
Also remove unnecessary whitespace from Makefiles.

FossilOrigin-Name: 790ea39a6585ea9f4dad9e132e1fb0447ac1558f728196580d2c3edee84823f7

1  2 
Makefile.in
Makefile.msc
main.mk
manifest
manifest.uuid
src/build.c
src/prepare.c
src/sqliteInt.h

diff --cc Makefile.in
Simple merge
diff --cc Makefile.msc
Simple merge
diff --cc main.mk
Simple merge
diff --cc manifest
index e195863f8b3c0988f122a2794b088aafcc59a2c5,4cd0556450f764b1bd3a18d0840ff997a9d180c7..aff8479dd83135329d3211099e67dba5147d36d6
+++ 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 e97bbedd6ea7cf5ae75d4914673444e41b8ee622,df07ff9960c606b736115b0df0aa624d0fd4c6c9..e5e2eef953983007271f368a14b0dcd53c543b66
@@@ -1,1 -1,1 +1,1 @@@
- 7107f0dacf4467430d1ca157cb848dde984e48e529e7d67a88b7594b0f8159c9
 -592b66e8058dd03a056a036e2606247c9efdb06d15eebe9bcc455f7f55e30ae6
++790ea39a6585ea9f4dad9e132e1fb0447ac1558f728196580d2c3edee84823f7
diff --cc src/build.c
Simple merge
diff --cc src/prepare.c
Simple merge
diff --cc src/sqliteInt.h
index c8a6fe90e23b2d5d59432dcf285eaef5e68a4a9f,5a6042b2b5d362722f313be313396daa52456967..0d6761f475540f152ff9eb09e78ecaf18bb71ced
@@@ -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
  /*