From a453c01f323054c82d387d20446c5b66f9a85533 Mon Sep 17 00:00:00 2001 From: default Date: Mon, 25 Mar 2024 19:58:27 +0100 Subject: [PATCH] Some software return a list of icons instead of one, because why not. --- html.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/html.c b/html.c index 60682f9..310c9eb 100644 --- a/html.c +++ b/html.c @@ -113,9 +113,13 @@ xs_html *html_actor_icon(snac *user, xs_dict *actor, const char *date, xs *name = actor_name(actor); /* get the avatar */ - if ((v = xs_dict_get(actor, "icon")) != NULL && - (v = xs_dict_get(v, "url")) != NULL) { - avatar = xs_dup(v); + if ((v = xs_dict_get(actor, "icon")) != NULL) { + /* if it's a list (Peertube), get the first one */ + if (xs_type(v) == XSTYPE_LIST) + v = xs_list_get(v, 0); + + if ((v = xs_dict_get(v, "url")) != NULL) + avatar = xs_dup(v); } if (avatar == NULL)