1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-16 19:45:07 +00:00

LibWeb: Add a naive Resource cache

This patch introduces a caching mechanism in ResourceLoader. It's keyed
on a LoadRequest object which is what you provide to load_resource()
when you want to load a resource.

We currently never prune the cache, so resources will stay in there
forever. This is obviously not gonna stay that way, but we're just
getting started here. :^)

This should drastically reduce the number of requests when loading
some sites (like Twitter) that reuse the same images over and over.
This commit is contained in:
Andreas Kling 2020-06-01 21:58:29 +02:00
parent f249f07699
commit 7af337764e
7 changed files with 94 additions and 15 deletions

View file

@ -54,8 +54,9 @@ void HTMLImageElement::parse_attribute(const FlyString& name, const String& valu
void HTMLImageElement::load_image(const String& src)
{
URL src_url = document().complete_url(src);
auto resource = ResourceLoader::the().load_resource(src_url);
LoadRequest request;
request.set_url(document().complete_url(src));
auto resource = ResourceLoader::the().load_resource(request);
set_resource(resource);
}