Max Wipfli
f808279769
LibWeb: Implement encoding sniffing algorithm
...
This patch implements the HTML specification's "encoding sniffing
algorithm", which is used when no encoding can be obtained from the
Content-Type header (either because it doesn't contain a charset=...)
value or the file has not been opened via HTTP (as with local files).
It also modifies the creator of the HTMLDocumentParser to use the new
HTMLDocumentParser::create_with_uncertain_encoding static method, which
runs the encoding sniffing algorithm before instantiating the parser.
This now allows us to load local HTML pages (or remote pages without a
charset specified in the 'Content-Type' header) with a non-UTF-8
encoding such as 'windows-1252'. This would previously crash the
browser. :^)
2021-05-18 21:02:07 +02:00
..
2021-05-18 21:02:07 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-05-02 22:48:06 +02:00
2021-04-23 16:46:57 +02:00
2021-04-15 20:22:08 +02:00
2021-04-25 19:04:34 +02:00
2021-04-25 19:04:34 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-05-07 22:34:34 +02:00
2021-04-22 11:22:27 +02:00
2021-04-23 16:46:57 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-23 16:46:57 +02:00
2021-04-22 11:22:27 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-23 16:46:57 +02:00
2021-04-22 11:22:27 +02:00
2021-04-19 23:49:16 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-15 20:22:08 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-05-13 16:16:25 +02:00
2021-05-13 16:16:25 +02:00
2021-04-23 16:46:57 +02:00
2021-04-22 11:22:27 +02:00
2021-04-23 16:46:57 +02:00
2021-04-22 11:22:27 +02:00
2021-04-23 16:46:57 +02:00
2021-04-22 11:22:27 +02:00
2021-05-04 22:03:14 +01:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-23 16:46:57 +02:00
2021-04-22 11:22:27 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-25 19:28:25 +02:00
2021-04-22 11:22:27 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-05-09 18:38:34 +02:00
2021-05-09 18:38:34 +02:00
2021-05-09 18:38:34 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-29 00:59:26 +02:00
2021-04-23 16:46:57 +02:00
2021-04-22 11:22:27 +02:00
2021-04-25 19:04:34 +02:00
2021-04-25 19:04:34 +02:00
2021-04-23 16:46:57 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-22 11:22:27 +02:00
2021-04-25 19:04:34 +02:00
2021-04-25 19:04:34 +02:00
2021-04-25 19:04:34 +02:00