aboutsummaryrefslogtreecommitdiff
path: root/data.c
diff options
context:
space:
mode:
authorgrunfink <grunfink@comam.es>2025-12-18 08:54:21 +0100
committergrunfink <grunfink@comam.es>2025-12-18 08:54:21 +0100
commit219f3e6808bdcf8a03cce404caa5cb6a008d00c5 (patch)
tree85a417c87c274f1d5b853f5c56692a82a7375891 /data.c
parentfd45b94c09233221d7b98a7270c768272bd25ac9 (diff)
Fixed leak in emoji_reacted().
Diffstat (limited to 'data.c')
-rw-r--r--data.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/data.c b/data.c
index 8f7050c..023bae6 100644
--- a/data.c
+++ b/data.c
@@ -1959,19 +1959,19 @@ xs_list *muted_list(snac *user)
/** emojis react **/
-const xs_str *emoji_reacted(snac *user, const char *id)
+xs_str *emoji_reacted(snac *user, const char *id)
/* returns the emoji an user reacted to a message */
{
xs *emojis = object_get_emoji_reacts(id);
int c = 0;
const char *v;
- xs_dict *msg;
while (xs_list_next(emojis, &v, &c)) {
+ xs *msg = NULL;
if (object_get_by_md5(v, &msg)) {
const xs_val *act = xs_dict_get(msg, "actor");
if (act && strcmp(act, user->actor) == 0)
- return xs_dict_get(msg, "content");
+ return xs_dup(xs_dict_get(msg, "content"));
}
}
return NULL;