changeset 22807:145ba79cb7aa

fts: Fix searching headers with TEXT/BODY TEXT is searching headers and BODY is searching MIME headers. Those headers were indexed with data language, so search must also include data language when looking up words. We'll just include the data language for all searches now, so it should always work correctly.
author Timo Sirainen <timo.sirainen@dovecot.fi>
date Mon, 05 Feb 2018 23:54:33 +0200
parents 9c5dc96d7c27
children 1bf8b3a77a92
files src/plugins/fts/fts-user.c
diffstat 1 files changed, 1 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/plugins/fts/fts-user.c	Mon Feb 05 23:51:51 2018 +0200
+++ b/src/plugins/fts/fts-user.c	Mon Feb 05 23:54:33 2018 +0200
@@ -295,6 +295,7 @@
 
 	p_array_init(&fuser->data_languages, user->pool, 1);
 	array_append(&fuser->data_languages, &user_lang, 1);
+	array_append(&fuser->languages, &user_lang, 1);
 
 	fuser->data_lang = user_lang;
 	return 0;
@@ -349,8 +350,6 @@
 
 	array_foreach(&fuser->languages, user_langp)
 		fts_user_language_free(*user_langp);
-	if (fuser->data_lang != NULL)
-		fts_user_language_free(fuser->data_lang);
 }
 
 int fts_mail_user_init(struct mail_user *user, const char **error_r)