Lines Matching defs:fuser
53 fts_user_init_languages(struct mail_user *user, struct fts_user *fuser,
68 if (fts_language_list_init(lang_config, &fuser->lang_list, error_r) < 0)
71 if (!fts_language_list_add_names(fuser->lang_list, languages, &unknown)) {
76 if (array_count(fts_language_list_get_all(fuser->lang_list)) == 0) {
238 struct fts_user *fuser = FTS_USER_CONTEXT(user);
240 i_assert(fuser != NULL);
241 array_foreach(&fuser->languages, user_langp) {
249 struct fts_user *fuser,
257 array_append(&fuser->languages, &user_lang, 1);
267 struct fts_user *fuser,
272 array_foreach(fts_language_list_get_all(fuser->lang_list), langp) {
273 if (fts_user_language_create(user, fuser, *langp, error_r) < 0)
280 fts_user_init_data_language(struct mail_user *user, struct fts_user *fuser,
297 p_array_init(&fuser->data_languages, user->pool, 1);
298 array_append(&fuser->data_languages, &user_lang, 1);
299 array_append(&fuser->languages, &user_lang, 1);
301 fuser->data_lang = user_lang;
307 struct fts_user *fuser = FTS_USER_CONTEXT(user);
309 i_assert(fuser != NULL);
310 return fuser->lang_list;
316 struct fts_user *fuser = FTS_USER_CONTEXT(user);
318 i_assert(fuser != NULL);
319 return &fuser->languages;
325 struct fts_user *fuser = FTS_USER_CONTEXT(user);
327 i_assert(fuser != NULL);
328 return &fuser->data_languages;
333 struct fts_user *fuser = FTS_USER_CONTEXT(user);
335 i_assert(fuser != NULL);
336 return fuser->data_lang;
349 static void fts_user_free(struct fts_user *fuser)
353 if (fuser->lang_list != NULL)
354 fts_language_list_deinit(&fuser->lang_list);
356 array_foreach(&fuser->languages, user_langp)
362 struct fts_user *fuser = FTS_USER_CONTEXT(user);
364 if (fuser != NULL) {
366 fuser->refcount++;
370 fuser = p_new(user->pool, struct fts_user, 1);
371 fuser->refcount = 1;
372 p_array_init(&fuser->languages, user->pool, 4);
374 if (fts_user_init_languages(user, fuser, error_r) < 0 ||
375 fts_user_init_data_language(user, fuser, error_r) < 0) {
376 fts_user_free(fuser);
379 if (fts_user_languages_fill_all(user, fuser, error_r) < 0) {
380 fts_user_free(fuser);
384 MODULE_CONTEXT_SET(user, fts_user_module, fuser);
390 struct fts_user *fuser = FTS_USER_CONTEXT(user);
392 if (fuser != NULL) {
393 i_assert(fuser->refcount > 0);
394 if (--fuser->refcount == 0)
395 fts_user_free(fuser);