summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-10-09 19:15:25 -0400
committerJune McEnroe <june@causal.agency>2020-10-09 19:15:25 -0400
commit1cc61723c9cd728654676a9d84905b205b5b0e4a (patch)
tree6586a50ee8b4d9a2a513600da5568c15b2fea92a
parentFactor out styleStrip (diff)
downloadcatgirl-1cc61723c9cd728654676a9d84905b205b5b0e4a.tar.gz
catgirl-1cc61723c9cd728654676a9d84905b205b5b0e4a.zip
Strip formatting from URLs
Notably this fixes opening URLs from litterbox queries where part of the
URL is highlighted.
-rw-r--r--url.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/url.c b/url.c
index 3f7f512..53fe271 100644
--- a/url.c
+++ b/url.c
@@ -86,14 +86,19 @@ static void push(uint id, const char *nick, const char *str, size_t len) {
 	struct URL *url = &ring.urls[ring.len++ % Cap];
 	free(url->nick);
 	free(url->url);
+
 	url->id = id;
 	url->nick = NULL;
 	if (nick) {
 		url->nick = strdup(nick);
 		if (!url->nick) err(EX_OSERR, "strdup");
 	}
-	url->url = strndup(str, len);
-	if (!url->url) err(EX_OSERR, "strndup");
+	url->url = malloc(len + 1);
+	if (!url->url) err(EX_OSERR, "malloc");
+
+	char buf[1024];
+	snprintf(buf, sizeof(buf), "%.*s", (int)len, str);
+	styleStrip(&(struct Cat) { url->url, len + 1, 0 }, buf);
 }
 
 void urlScan(uint id, const char *nick, const char *mesg) {
c1fe1427145&follow=1'>Expand and clarify documentationJune McEnroe 2020-05-21Execute PAGER with the SHELLJune McEnroe 2020-05-21Automatically perform database migrations in litterboxJune McEnroe 2020-05-20Don't install rc scripts on other platformsJune McEnroe 2020-05-20Rewrite build and install like pounce 1.3June McEnroe 2020-05-20Update email addressesJune McEnroe 2020-04-23Call updateConsumer from handleError 1.2p1June McEnroe 2020-04-20Use . as ${LDLIBS.$@} separatorJune McEnroe 2020-04-05Error on invalid ISUPPORT values 1.2June McEnroe 2020-04-05Only set RCS on FreeBSDJune McEnroe 2020-04-05Log bans and unbansJune McEnroe 2020-04-05Parse mode types from ISUPPORTJune McEnroe 2020-04-05Add unscoop matchers for ban/unban eventsJune McEnroe 2020-04-05Check unscoop regexps with make testJune McEnroe 2020-04-05Add unscoop -n flag for checking regexpsJune McEnroe 2020-04-05Add Ban and Unban event typesJune McEnroe 2020-04-02Update styleJune McEnroe 2020-03-31Update unscoop catgirl matchersJune McEnroe 2020-03-31Fix writing verbose to stderrJune McEnroe 2020-03-02Include <>/-/* around nicks in scoop coloring 1.1June McEnroe 2020-03-02Replace .mk files with configure scriptJune McEnroe 2020-02-28Implement the causal.agency/consumer capabilityJune McEnroe 2020-02-22Include <>/-/* around nicks in coloringJune McEnroe 2020-02-22Use (almost) the full range of IRC colors for nicksJune McEnroe