]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Register any built-in fts5 module before loading automatic extensions. This allows...
authordan <dan@noemail.net>
Fri, 19 Aug 2016 18:37:35 +0000 (18:37 +0000)
committerdan <dan@noemail.net>
Fri, 19 Aug 2016 18:37:35 +0000 (18:37 +0000)
FossilOrigin-Name: b10e31dce8e590e1ba30f512374a8c16656bcc72

manifest
manifest.uuid
src/main.c

index f261342285f1afc7d22e5e7cf3a6ab062f19c506..a68dc1c021309f08041c513c7db7b5207d5b4815 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Have\sthe\sfts5\ssnippet()\sfunction\savoid\sfavouring\ssnippets\sthat\sbegin\swith\ssentences\sthat\sdo\snot\scontain\ssearch\sterms.\sAdd\san\sextra\sbias\sin\sfavour\sof\sthe\sfirst\ssentence\sin\sthe\sdocument.
-D 2016-08-19T14:25:38.928
+C Register\sany\sbuilt-in\sfts5\smodule\sbefore\sloading\sautomatic\sextensions.\sThis\sallows\sautomatic\sextensions\sto\sregister\sfts5\stokenizers\sand\sauxiliary\sfunctions.
+D 2016-08-19T18:37:35.386
 F Makefile.in cfd8fb987cd7a6af046daa87daa146d5aad0e088
 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
 F Makefile.msc d66d0395c38571aab3804f8db0fa20707ae4609a
@@ -349,7 +349,7 @@ F src/hwtime.h 747c1bbe9df21a92e9c50f3bbec1de841dc5e5da
 F src/insert.c 8f4e9fcbd8e95e85f15647ba8b413b18d556ec2b
 F src/legacy.c 75d3023be8f0d2b99d60f905090341a03358c58e
 F src/loadext.c dd7a2b77902cc66c22555aef02e1a682554b7aec
-F src/main.c 16c1b2114eae8804caf3a8de8cb47bf2c6d83ad3
+F src/main.c 4f29b8d1b705fc3b73b26f892e85df2bfca31cff
 F src/malloc.c 1443d1ad95d67c21d77af7ae3f44678252f0efec
 F src/mem0.c 6a55ebe57c46ca1a7d98da93aaa07f99f1059645
 F src/mem1.c 6919bcf12f221868ea066eec27e579fed95ce98b
@@ -1510,7 +1510,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 184ecbe9c0c3280a22cdeda5c7836a7b280c3e1f
-R 1ef5a5b8d26eab21fbb58bf0464e61ed
+P d8180af2adfc101dfce95a0498b5cd7b30643b30
+R 60073adaf70faac8deb27fa21c3071ec
 U dan
-Z ed743fa5b6cead3848c470a1b5a47844
+Z db6d5df26cfba25421660b26226c4ab6
index c3129c10b98e1244c87810a1f76876376d729bac..674031237c53b78470e804786ab64f2042876832 100644 (file)
@@ -1 +1 @@
-d8180af2adfc101dfce95a0498b5cd7b30643b30
\ No newline at end of file
+b10e31dce8e590e1ba30f512374a8c16656bcc72
\ No newline at end of file
index f31f8658187b312b0d556557cd53a949dbe97f8b..4e4836238be7bcbc9a8d4e83503582ac373e611f 100644 (file)
@@ -2948,11 +2948,20 @@ static int openDatabase(
   */
   sqlite3Error(db, SQLITE_OK);
   sqlite3RegisterPerConnectionBuiltinFunctions(db);
+  rc = sqlite3_errcode(db);
+
+#ifdef SQLITE_ENABLE_FTS5
+  /* Register any built-in FTS5 module before loading the automatic
+  ** extensions. This allows automatic extensions to register FTS5 
+  ** tokenizers and auxiliary functions.  */
+  if( !db->mallocFailed && rc==SQLITE_OK ){
+    rc = sqlite3Fts5Init(db);
+  }
+#endif
 
   /* Load automatic extensions - extensions that have been registered
   ** using the sqlite3_automatic_extension() API.
   */
-  rc = sqlite3_errcode(db);
   if( rc==SQLITE_OK ){
     sqlite3AutoLoadExtensions(db);
     rc = sqlite3_errcode(db);
@@ -2981,12 +2990,6 @@ static int openDatabase(
   }
 #endif
 
-#ifdef SQLITE_ENABLE_FTS5
-  if( !db->mallocFailed && rc==SQLITE_OK ){
-    rc = sqlite3Fts5Init(db);
-  }
-#endif
-
 #ifdef SQLITE_ENABLE_ICU
   if( !db->mallocFailed && rc==SQLITE_OK ){
     rc = sqlite3IcuInit(db);