From 9bc10da8a5e49fceaeb8a6c37afe2d3cac0b398e Mon Sep 17 00:00:00 2001 From: default Date: Wed, 17 May 2023 07:27:08 +0200 Subject: [PATCH] In mastoapi account search, return local users at the end. --- mastoapi.c | 48 ++++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/mastoapi.c b/mastoapi.c index 047e4bd..3403f53 100644 --- a/mastoapi.c +++ b/mastoapi.c @@ -981,30 +981,6 @@ int mastoapi_get_handler(const xs_dict *req, const char *q_path, xs_set_init(&seen); - /* local users */ - p = ulst; - while (xs_list_iter(&p, &v)) { - snac user; - - if (strcmp(v, xs_dict_get(snac1.config, "uid")) == 0) - continue; - - if (user_open(&user, v)) { - xs *v2 = xs_tolower_i(xs_dup(v)); - - if (xs_startswith(v2, q)) { - xs *actor = msg_actor(&user); - xs *acct = mastoapi_account(actor); - - out = xs_list_append(out, acct); - } - - xs_set_add(&seen, user.actor); - - user_free(&user); - } - } - /* user relations */ xs_list *lsts[] = { wing, wers, NULL }; int n; @@ -1033,6 +1009,30 @@ int mastoapi_get_handler(const xs_dict *req, const char *q_path, } } + /* local users */ + p = ulst; + while (xs_list_iter(&p, &v)) { + snac user; + + if (strcmp(v, xs_dict_get(snac1.config, "uid")) == 0) + continue; + + if (user_open(&user, v)) { + xs *v2 = xs_tolower_i(xs_dup(v)); + + if (xs_startswith(v2, q)) { + xs *actor = msg_actor(&user); + xs *acct = mastoapi_account(actor); + + out = xs_list_append(out, acct); + } + + xs_set_add(&seen, user.actor); + + user_free(&user); + } + } + xs_set_free(&seen); } }