snac2

Fork of https://codeberg.org/grunfink/snac2
git clone https://git.inz.fi/snac2
Log | Files | Refs | README | LICENSE

commit 914bb61dad2bc8db81cc43c832fadfbda816bc9b
parent a504544b4105876b875ec691c035952a50790832
Author: default <nobody@localhost>
Date:   Sat,  4 Jan 2025 15:55:47 +0100

More search by URL tweaks.

Diffstat:
Mhtml.c | 40+++++++++++++++++-----------------------
1 file changed, 17 insertions(+), 23 deletions(-)

diff --git a/html.c b/html.c @@ -3080,36 +3080,30 @@ int html_get_handler(const xs_dict *req, const char *q_path, q = url_acct; } else { - /* if it's not already here, try to bring it to the user's timeline */ - xs *md5 = xs_md5_hex(q, strlen(q)); + /* bring it to the user's timeline */ + xs *object = NULL; + int status; - if (!timeline_here(&snac, md5)) { - xs *object = NULL; - int status; + status = activitypub_request(&snac, q, &object); + snac_debug(&snac, 1, xs_fmt("Request searched URL %s %d", q, status)); - status = activitypub_request(&snac, q, &object); - snac_debug(&snac, 1, xs_fmt("Request searched URL %s %d", q, status)); + if (valid_status(status)) { + /* got it; also request the actor */ + const char *attr_to = get_atto(object); - if (valid_status(status)) { - /* got it; also request the actor */ - const char *attr_to = get_atto(object); + if (!xs_is_null(attr_to)) { + status = actor_request(&snac, attr_to, &actor_obj); - if (!xs_is_null(attr_to)) { - status = actor_request(&snac, attr_to, &actor_obj); + if (valid_status(status)) { + /* reset the query string to be the real id */ + url_acct = xs_dup(xs_dict_get(object, "id")); + q = url_acct; - snac_debug(&snac, 1, xs_fmt("Request author %s of %s %d", attr_to, q, status)); + /* add the post to the timeline */ + xs *md5 = xs_md5_hex(q, strlen(q)); - if (valid_status(status)) { - /* reset the query string to be the real id */ - url_acct = xs_dup(xs_dict_get(object, "id")); - q = url_acct; - - /* add the actor */ - actor_add(attr_to, actor_obj); - - /* add the post to the timeline */ + if (!timeline_here(&snac, md5)) timeline_add(&snac, q, object); - } } } }