summaryrefslogtreecommitdiff
path: root/html.c
diff options
context:
space:
mode:
authordefault <nobody@localhost>2022-09-29 09:11:43 +0200
committerdefault <nobody@localhost>2022-09-29 09:11:43 +0200
commit49bca7e273640c65f9aa41309805ff3f7425123d (patch)
tree1e6e9c0b1cb5408c5eded094d4643c5274f7da09 /html.c
parentc5a7a9c4751c339c6abb15f64c5c5b0cc28e2d62 (diff)
html_entry() is built in its own string and then added.
This will be faster.
Diffstat (limited to 'html.c')
-rw-r--r--html.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/html.c b/html.c
index a7ed0b4..5b336bc 100644
--- a/html.c
+++ b/html.c
@@ -368,7 +368,7 @@ d_char *html_top_controls(snac *snac, d_char *s)
}
-d_char *html_entry(snac *snac, d_char *s, char *msg, xs_set *seen, int level)
+d_char *html_entry(snac *snac, d_char *os, char *msg, xs_set *seen, int level)
{
char *id = xs_dict_get(msg, "id");
char *type = xs_dict_get(msg, "type");
@@ -378,17 +378,19 @@ d_char *html_entry(snac *snac, d_char *s, char *msg, xs_set *seen, int level)
/* return if already seen */
if (xs_set_add(seen, id) == 0)
- return s;
+ return os;
if (strcmp(type, "Follow") == 0)
- return s;
+ return os;
/* bring the main actor */
if ((actor = xs_dict_get(msg, "attributedTo")) == NULL)
- return s;
+ return os;
if (!valid_status(actor_get(snac, actor, &actor_o)))
- return s;
+ return os;
+
+ xs *s = xs_str_new(NULL);
/* if this is our post, add the score */
if (xs_startswith(id, snac->actor)) {
@@ -422,7 +424,7 @@ d_char *html_entry(snac *snac, d_char *s, char *msg, xs_set *seen, int level)
"<a href=\"%s\">%s</a> %s</div>\n",
xs_dict_get(actor_r, "id"),
name,
- "boosted"
+ L("boosted")
);
s = xs_str_cat(s, s1);
@@ -510,7 +512,7 @@ d_char *html_entry(snac *snac, d_char *s, char *msg, xs_set *seen, int level)
s = xs_str_cat(s, "</div> <!-- post or child -->\n");
- return s;
+ return xs_str_cat(os, s);
}