From 1c5a6894579924cb4d35e41ba3f140797a89c083 Mon Sep 17 00:00:00 2001 From: default Date: Tue, 11 Jul 2023 19:45:58 +0200 Subject: Fixed some memory leaks. --- format.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'format.c') diff --git a/format.c b/format.c index 482edce..4491ae0 100644 --- a/format.c +++ b/format.c @@ -238,3 +238,19 @@ xs_str *sanitize(const char *content) return s; } + + +xs_str *encode_html(const char *str) +/* escapes html characters */ +{ + xs_str *encoded = xs_replace(str, "&", "&"); + encoded = xs_replace_i(encoded, "<", "<"); + encoded = xs_replace_i(encoded, ">", ">"); + encoded = xs_replace_i(encoded, "\"", """); + encoded = xs_replace_i(encoded, "'", "'"); + + /* Restore only
. Probably safe. Let's hope nothing goes wrong with this. */ + encoded = xs_replace_i(encoded, "<br>", "
"); + + return encoded; +} -- cgit v1.2.3