Luke
6ffcd53479
LibWeb: Fix character references losing characters in certain situations
...
This fixes 4 issues:
- RECONSUME_IN_RETURN_STATE was functionally equivalent to
SWITCH_TO_RETURN_STATE, which caused us to lose characters.
For example, &test= would lose the =
- & characters by themselves would be lost. For example, 1 & 2
would become 1 2. This is because we forgot to flush
characters in the the ANYTHING_ELSE path in CharacterReference
- Named character references didn't work at all in attributes.
This is because there was a path that was checking the entity
code points instead of the entity itself. Plus, the path that
was checking the entity itself wasn't quite spec compliant.
- If we fail to match a named character reference, the first
character is lost. For example &test would become &est.
However, this relies on a little hack since I can't wrap my
head around on how to change the code to do as the spec says.
The hack is to reconsume in AmbigiousAmpersand instead of
just switching to it.
Fixes #3957
2020-12-29 17:39:08 +01:00
..
2020-12-29 17:39:08 +01:00
2020-11-12 10:38:26 +01:00
2020-11-12 10:38:26 +01:00
2020-11-10 19:11:52 +01:00
2020-07-28 18:55:48 +02:00
2020-12-10 11:02:46 +01:00
2020-11-22 18:20:56 +01:00
2020-11-22 18:20:56 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-11-22 15:56:27 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-11-22 15:56:27 +01:00
2020-11-22 15:56:27 +01:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-11-22 15:56:27 +01:00
2020-11-22 15:56:27 +01:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-11-12 10:38:26 +01:00
2020-11-12 10:38:26 +01:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-12-14 10:39:57 +01:00
2020-11-22 18:20:56 +01:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-11-12 10:38:26 +01:00
2020-12-10 11:02:46 +01:00
2020-11-22 18:20:56 +01:00
2020-11-22 18:20:56 +01:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-12-14 13:45:57 +01:00
2020-12-14 13:45:57 +01:00
2020-12-10 11:02:46 +01:00
2020-11-22 18:20:56 +01:00
2020-11-22 15:56:27 +01:00
2020-12-10 11:02:46 +01:00
2020-11-22 18:20:56 +01:00
2020-11-22 15:56:27 +01:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-11-22 15:56:27 +01:00
2020-11-22 15:56:27 +01:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-11-22 18:20:56 +01:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-23 08:33:16 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-12-17 02:02:00 +01:00
2020-12-17 02:02:00 +01:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-10-22 15:24:42 +02:00
2020-10-22 15:24:42 +02:00
2020-12-10 11:02:46 +01:00
2020-07-28 18:55:48 +02:00
2020-07-28 18:55:48 +02:00
2020-12-10 11:02:46 +01:00
2020-11-22 18:20:56 +01:00
2020-12-10 11:02:46 +01:00
2020-12-13 17:54:40 +01:00
2020-12-13 15:57:09 +01:00