1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 00:37:35 +00:00

LibWeb: Disable resource cache for file:// URLs

This makes the browser a bit less annoying when testing local files,
since you no longer have to restart it for changes to take effect.

Longer-term we should have a proper way to decide which resources
are cacheable.
This commit is contained in:
Andreas Kling 2021-01-24 10:34:52 +01:00
parent 712f76c010
commit ae0be7797f

View file

@ -78,19 +78,24 @@ RefPtr<Resource> ResourceLoader::load_resource(Resource::Type type, const LoadRe
if (!request.is_valid()) if (!request.is_valid())
return nullptr; return nullptr;
auto it = s_resource_cache.find(request); bool use_cache = request.url().protocol() != "file";
if (it != s_resource_cache.end()) {
if (it->value->type() != type) { if (use_cache) {
dbgln("FIXME: Not using cached resource for {} since there's a type mismatch.", request.url()); auto it = s_resource_cache.find(request);
} else { if (it != s_resource_cache.end()) {
dbgln<debug_cache>("Reusing cached resource for: {}", request.url()); if (it->value->type() != type) {
return it->value; dbgln("FIXME: Not using cached resource for {} since there's a type mismatch.", request.url());
} else {
dbgln<debug_cache>("Reusing cached resource for: {}", request.url());
return it->value;
}
} }
} }
auto resource = Resource::create({}, type, request); auto resource = Resource::create({}, type, request);
s_resource_cache.set(request, resource); if (use_cache)
s_resource_cache.set(request, resource);
load( load(
request, request,