From 48c9ec565d0a8e147adb61eb79777812688bfbaa Mon Sep 17 00:00:00 2001 From: Ambrose Li Date: Mon, 24 Aug 2020 23:48:09 -0400 Subject: In HTML5 anchors should not be closed when encountering divs, for example, but should be closed when encountering buttons, for example. Many sites that use HTML5-style anchors end up having links displayed with zero-length link texts. The proposed patch correct this behaviour by detecting whether the document is HTML5, then suppressing the close-anchor action in CLOSE_A if it's an HTML5 document. A new macro handles the HTML5-specific cases where anchors are not already always closed. This also fixes a bug in the tokenizing FSM in etc.c that prevented the !doctype element from being recognized; the fix is necessary because HTML5 detection depends on checking the !doctype element. --- etc.c | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'etc.c') diff --git a/etc.c b/etc.c index 37c4f15..16d1295 100644 --- a/etc.c +++ b/etc.c @@ -727,6 +727,11 @@ next_status(char c, int *status) case '>': *status = R_ST_NORMAL; break; + case 'D': + case 'd': + /* could be a !doctype */ + *status = R_ST_TAG; + break; default: *status = R_ST_IRRTAG; } -- cgit v1.2.3