From 85ed0eb0d535700a5df837c37f51848811e461a0 Mon Sep 17 00:00:00 2001 From: violette Date: Thu, 18 Dec 2025 07:58:24 +0100 Subject: Added emoji reactions (contributed by violette). --- format.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'format.c') diff --git a/format.c b/format.c index 84c634d..4f93b7b 100644 --- a/format.c +++ b/format.c @@ -459,6 +459,9 @@ xs_str *sanitize(const char *content) char *p; const char *v; + if (!content) + return NULL; + sl = xs_regex_split(content, "]+>"); p = sl; -- cgit v1.2.3 From 11af00194e3e0ec15e17a23556dc2929f92e0210 Mon Sep 17 00:00:00 2001 From: grunfink Date: Thu, 1 Jan 2026 17:01:03 +0100 Subject: Bumped copyright year. --- format.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'format.c') diff --git a/format.c b/format.c index 4f93b7b..803e5a5 100644 --- a/format.c +++ b/format.c @@ -1,5 +1,5 @@ /* snac - A simple, minimalistic ActivityPub instance */ -/* copyright (c) 2022 - 2025 grunfink et al. / MIT license */ +/* copyright (c) 2022 - 2026 grunfink et al. / MIT license */ #include "xs.h" #include "xs_regex.h" -- cgit v1.2.3 From de9d546d70cfcbf3b2450b70039470c9a68ecdc6 Mon Sep 17 00:00:00 2001 From: violette Date: Mon, 12 Jan 2026 06:03:04 +0100 Subject: Added emoji categories. --- format.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'format.c') diff --git a/format.c b/format.c index 803e5a5..95c1b12 100644 --- a/format.c +++ b/format.c @@ -79,6 +79,24 @@ xs_dict *emojis(void) return d; } + +xs_dict *emojis_rm_categories() { + xs *emjs = emojis(); + char *res = xs_dict_new(); + const char *k, *v; + xs_dict_foreach(emjs, k, v) { + if (xs_type(v) == XSTYPE_DICT) { + const char *v2; + xs_dict_foreach(v, k, v2) + res = xs_dict_append(res, k, v2); + } + else + res = xs_dict_append(res, k, v); + } + return res; +} + + /* Non-whitespace without trailing comma, period or closing paren */ #define NOSPACE "([^[:space:],.)]+|[,.)]+[^[:space:],.)])+" @@ -405,7 +423,7 @@ xs_str *not_really_markdown(const char *content, xs_list **attach, xs_list **tag { /* traditional emoticons */ - xs *d = emojis(); + xs *d = emojis_rm_categories(); int c = 0; const char *k, *v; -- cgit v1.2.3