mirror of
https://codeberg.org/grunfink/snac2.git
synced 2024-11-25 14:35:04 +00:00
Avoid a webfinger request in msg_note().
This commit is contained in:
parent
e447d1852c
commit
eacfa5b751
1 changed files with 16 additions and 9 deletions
|
@ -1204,18 +1204,25 @@ xs_dict *msg_note(snac *snac, const xs_str *content, const xs_val *rcpts,
|
||||||
to = xs_list_append(to, a);
|
to = xs_list_append(to, a);
|
||||||
|
|
||||||
/* add this author to the tag list as a mention */
|
/* add this author to the tag list as a mention */
|
||||||
xs *t_href = NULL;
|
if (!xs_is_null(a)) {
|
||||||
xs *t_name = NULL;
|
xs *l = xs_split(a, "/");
|
||||||
|
xs *actor_o = NULL;
|
||||||
|
|
||||||
if (!xs_is_null(a) && valid_status(webfinger_request(a, &t_href, &t_name)
|
if (xs_list_len(l) > 3 && valid_status(object_get(a, &actor_o))) {
|
||||||
&& t_href && t_name)) {
|
char *uname = xs_dict_get(actor_o, "preferredUsername");
|
||||||
xs *t = xs_dict_new();
|
|
||||||
|
|
||||||
t = xs_dict_append(t, "type", "Mention");
|
if (!xs_is_null(uname) && *uname) {
|
||||||
t = xs_dict_append(t, "href", t_href);
|
xs *handle = xs_fmt("@%s@%s", uname, xs_list_get(l, 2));
|
||||||
t = xs_dict_append(t, "name", t_name);
|
|
||||||
|
|
||||||
tag = xs_list_append(tag, t);
|
xs *t = xs_dict_new();
|
||||||
|
|
||||||
|
t = xs_dict_append(t, "type", "Mention");
|
||||||
|
t = xs_dict_append(t, "href", a);
|
||||||
|
t = xs_dict_append(t, "name", handle);
|
||||||
|
|
||||||
|
tag = xs_list_append(tag, t);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* get the context, if there is one */
|
/* get the context, if there is one */
|
||||||
|
|
Loading…
Reference in a new issue