Andreas Kling
b400a34984
LibWeb: Cache the first <base href> (in tree order) in Document
...
When parsing relative URLs, we have to check the first <base href> in
tree order (if one is available). This was getting *very* costly on
large DOMs with many relative urls.
This patch avoids all that repeated traversal by letting Document cache
the first <base href> and invalidating the cache whenever a <base>
element is added/removed/edited in the DOM.
The browser was stuck doing this for a *very* long time when loading
the ECMA-262 spec, and this removes that problem entirely.
2022-11-05 00:30:10 +01:00
..
2022-10-01 21:05:32 +01:00
2022-10-01 21:05:32 +01:00
2022-10-26 18:49:41 +01:00
2022-10-26 18:49:41 +01:00
2022-10-01 21:05:32 +01:00
2022-09-21 21:12:24 +01:00
2022-10-01 21:05:32 +01:00
2022-09-21 21:12:24 +01:00
2022-09-18 02:08:01 +02:00
2022-10-01 21:05:32 +01:00
2022-09-21 21:12:24 +01:00
2022-10-31 14:12:44 +00:00
2022-10-01 21:05:32 +01:00
2022-10-09 10:14:57 +02:00
2022-09-25 19:13:31 +01:00
2022-10-01 21:05:32 +01:00
2022-10-01 21:05:32 +01:00
2022-10-09 10:14:57 +02:00
2022-10-01 21:05:32 +01:00
2022-10-01 21:05:32 +01:00
2022-11-05 00:30:10 +01:00
2022-11-05 00:30:10 +01:00
2022-10-09 10:14:57 +02:00
2022-10-01 21:05:32 +01:00
2022-10-01 21:05:32 +01:00
2022-10-09 10:14:57 +02:00
2022-10-01 21:05:32 +01:00
2022-09-21 21:12:24 +01:00
2022-10-09 10:14:57 +02:00
2022-10-31 14:12:44 +00:00
2022-09-25 19:13:31 +01:00
2022-10-09 10:14:57 +02:00
2022-10-31 14:12:44 +00:00
2022-09-25 19:13:31 +01:00
2022-10-09 10:14:57 +02:00
2022-11-03 14:48:04 +00:00
2022-11-03 14:48:04 +00:00
2022-10-09 10:14:57 +02:00
2022-10-01 21:05:32 +01:00
2022-10-01 21:05:32 +01:00
2022-10-09 10:14:57 +02:00
2022-10-15 01:25:12 +02:00
2022-10-26 18:49:41 +01:00
2022-10-24 18:06:55 +02:00
2022-10-09 10:14:57 +02:00
2022-10-01 21:05:32 +01:00
2022-09-21 21:12:24 +01:00
2022-10-01 21:05:32 +01:00
2022-09-24 19:31:39 +01:00
2022-10-01 21:05:32 +01:00
2022-10-01 21:05:32 +01:00
2022-10-29 15:48:46 +01:00
2022-10-01 21:05:32 +01:00
2022-10-01 21:05:32 +01:00
2022-10-01 21:05:32 +01:00
2022-10-01 21:05:32 +01:00
2022-09-25 19:13:31 +01:00
2022-09-18 02:08:01 +02:00
2022-11-03 14:48:04 +00:00
2022-11-03 14:48:04 +00:00
2022-10-09 10:14:57 +02:00
2022-10-01 21:05:32 +01:00
2022-09-24 19:31:39 +01:00
2022-10-28 16:17:08 +01:00
2022-10-20 19:46:39 +02:00
2022-10-20 19:46:39 +02:00
2022-10-01 21:05:32 +01:00
2022-10-01 21:05:32 +01:00
2022-09-25 19:13:31 +01:00
2022-09-25 19:13:31 +01:00
2022-10-01 21:05:32 +01:00
2022-09-25 19:13:31 +01:00
2022-10-01 21:05:32 +01:00
2022-09-21 21:12:24 +01:00
2022-10-09 10:14:57 +02:00
2022-10-31 14:12:44 +00:00
2022-10-11 21:49:48 +02:00
2022-11-03 14:48:04 +00:00
2022-11-03 14:48:04 +00:00
2022-10-09 10:14:57 +02:00
2022-10-01 21:05:32 +01:00
2022-10-01 21:05:32 +01:00
2022-10-01 21:05:32 +01:00
2022-10-01 21:05:32 +01:00
2022-10-31 14:12:44 +00:00
2022-10-01 21:05:32 +01:00
2022-10-09 10:14:57 +02:00
2022-10-01 21:05:32 +01:00
2022-09-21 21:12:24 +01:00