From e251c61382d4cd39ed89876a37962acab1122f84 Mon Sep 17 00:00:00 2001 From: green Date: Tue, 1 Apr 2025 23:08:48 +0200 Subject: allow emoji urls with no extension --- format.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'format.c') diff --git a/format.c b/format.c index b2b585d..43dd638 100644 --- a/format.c +++ b/format.c @@ -385,7 +385,8 @@ xs_str *not_really_markdown(const char *content, xs_list **attach, xs_list **tag const char *t = NULL; /* is it an URL to an image? */ - if (xs_startswith(v, "https:/" "/") && xs_startswith((t = xs_mime_by_ext(v)), "image/")) { + if (xs_startswith(v, "https:/" "/") && + (xs_startswith((t = xs_mime_by_ext(v)), "image/") || strrchr(v, '.') == NULL)) { if (tag && xs_str_in(s, k) != -1) { /* add the emoji to the tag list */ xs *e = xs_dict_new(); -- cgit From 15100ad81941c967ce34cc7534bf9b6d7b585e91 Mon Sep 17 00:00:00 2001 From: green Date: Tue, 1 Apr 2025 23:12:21 +0200 Subject: check the extension in a different way --- format.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'format.c') diff --git a/format.c b/format.c index 43dd638..1bb2cf1 100644 --- a/format.c +++ b/format.c @@ -10,6 +10,7 @@ #include "xs_match.h" #include "snac.h" +#include /* emoticons, people laughing and such */ const char *smileys[] = { @@ -382,11 +383,11 @@ xs_str *not_really_markdown(const char *content, xs_list **attach, xs_list **tag const char *k, *v; while (xs_dict_next(d, &k, &v, &c)) { - const char *t = NULL; + const char *t = xs_mime_by_ext(v); /* is it an URL to an image? */ if (xs_startswith(v, "https:/" "/") && - (xs_startswith((t = xs_mime_by_ext(v)), "image/") || strrchr(v, '.') == NULL)) { + (xs_startswith(t, "image/") || strcmp(t, "application/octet-stream") == 0)) { if (tag && xs_str_in(s, k) != -1) { /* add the emoji to the tag list */ xs *e = xs_dict_new(); -- cgit From 0c03e6c9d9a6b65fede94cc9eab34a05746f8d5e Mon Sep 17 00:00:00 2001 From: green Date: Sun, 13 Apr 2025 15:44:24 +0200 Subject: cleaned up old changes and outdated comments --- activitypub.c | 5 ++--- format.c | 1 - html.c | 4 ---- 3 files changed, 2 insertions(+), 8 deletions(-) (limited to 'format.c') diff --git a/activitypub.c b/activitypub.c index ee7c9b1..2403a62 100644 --- a/activitypub.c +++ b/activitypub.c @@ -34,7 +34,7 @@ const char *susie_cool = "+ZcgN7wF7ZVihXkfSlWIVzIA6dbQzaygllpNuTX" "ZmmFNlvxADX1+o0cUPMbAAAAAElFTkSuQmCC"; -const char *susie_muertos = +const char *susie_muertos = "iVBORw0KGgoAAAANSUhEUgAAAEAAAABAAQAAAAC" "CEkxzAAAAV0lEQVQoz4XQsQ0AMQxCUW/A/lv+DT" "ic6zGRolekIMyMELNp8PiCEw6Q4w4NoAt53IH5m" @@ -1328,8 +1328,7 @@ xs_dict *msg_actor(snac *snac) msg = xs_dict_set(msg, "published", xs_dict_get(snac->config, "published")); // this exists so we get the emoji tags from our name too. - // and then we just throw away the result, because it's kinda useless to have markdown in the dysplay name. - // right now, only emojies in bio actually work for local users + // and then we just throw away the result, because it's kinda useless to have markdown in the display name. xs *name_dummy = not_really_markdown(xs_dict_get(snac->config, "name"), NULL, &tags); xs *f_bio_2 = not_really_markdown(xs_dict_get(snac->config, "bio"), NULL, &tags); diff --git a/format.c b/format.c index 1bb2cf1..3089955 100644 --- a/format.c +++ b/format.c @@ -10,7 +10,6 @@ #include "xs_match.h" #include "snac.h" -#include /* emoticons, people laughing and such */ const char *smileys[] = { diff --git a/html.c b/html.c index 1cd9dd9..b9f2419 100644 --- a/html.c +++ b/html.c @@ -3136,10 +3136,6 @@ xs_html *html_people_list(snac *user, xs_list *list, const char *header, const c if (!xs_is_null(c)) { xs *sc = sanitize(c); - - // replace shortnames in bio - // bug: this somehow fires twice on one specific user - // @ielenia@ck.catwithaclari.net sc = replace_shortnames(sc, xs_dict_get(actor, "tag"), 2, proxy); xs_html *snac_content = xs_html_tag("div", -- cgit