Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use existing external resource for <use> while revalidating #20150

Merged
merged 1 commit into from Nov 19, 2019

Conversation

chromium-wpt-export-bot
Copy link
Collaborator

@chromium-wpt-export-bot chromium-wpt-export-bot commented Nov 7, 2019

When we load a previously cached resource for <use> and it requires
revalidation - and an earlier <use> that references the same resource
hasn't yet generated its shadow tree - we could end up failing to
generate a shadow tree for the the "first" <use> since the resource
appears to be "invalid" while the revalidation is in progress. This
"first" <use> would then not be invalidated when the revalidation
completes.

Consider the resource to be valid while revalidating if it has a
Document already - meaning it has previously finished loading and
successfully parsed a document. This means the "first" <use> might end
up being stale until it's invalidated if the revalidation returned a
newer version of the resource - which is wrong but arguably better than
failing to display at all like was the case previously. (This should
also be consistent with how other types of resources are handled in
cases like this.)

Bug: 593261, 1021530
Change-Id: I9d68a1a60685757a990c2ec811c5ca53afc4fb25
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1903200
Commit-Queue: Fredrik Söderquist <fs@opera.com>
Reviewed-by: Nate Chapin <japhet@chromium.org>
Cr-Commit-Position: refs/heads/master@{#716678}

Copy link
Collaborator

@wpt-pr-bot wpt-pr-bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The review process for this patch is being conducted in the Chromium project.

When we load a previously cached resource for <use> and it requires
revalidation - and an earlier <use> that references the same resource
hasn't yet generated its shadow tree - we could end up failing to
generate a shadow tree for the the "first" <use> since the resource
appears to be "invalid" while the revalidation is in progress. This
"first" <use> would then not be invalidated when the revalidation
completes.

Consider the resource to be valid while revalidating if it has a
Document already - meaning it has previously finished loading and
successfully parsed a document. This means the "first" <use> might end
up being stale until it's invalidated if the revalidation returned a
newer version of the resource - which is wrong but arguably better than
failing to display at all like was the case previously. (This should
also be consistent with how other types of resources are handled in
cases like this.)

Bug: 593261, 1021530
Change-Id: I9d68a1a60685757a990c2ec811c5ca53afc4fb25
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1903200
Commit-Queue: Fredrik Söderquist <fs@opera.com>
Reviewed-by: Nate Chapin <japhet@chromium.org>
Cr-Commit-Position: refs/heads/master@{#716678}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants