Fix an invalidation bug and improve display list correlation.

RESOLVED FIXED in Firefox 66

Status

()

enhancement
RESOLVED FIXED
5 months ago
5 months ago

People

(Reporter: gw, Assigned: gw)

Tracking

unspecified
mozilla66
Points:
---

Firefox Tracking Flags

(firefox66 fixed)

Details

Attachments

(1 attachment)

Assignee

Description

5 months ago

Fix an invalidation bug and improve display list correlation.

Fixes a subtle bug which could break the invalidation logic in some cases. If the content of a tile changed while that tile was not visible, the content change would be detected correctly. However, that changed flag would not be propagated to the is_valid flag, since it's skipped by the culling check. Instead, ensure that the content change invalidates the tile even if it's off-screen for now.

Improve the display list correlation code.

Previously, the code was picking a specific number of primitives, and trying to correlate them, even if they are instanced in multiple places on the page. It's far more reliable to instead only select unique primitives (uids that only occur once) and use these for correlation display list offsets. This seems to give perfectly accurate results in every page I tested (there are probably some edge cases that can still break this logic though, to follow up on as we find them).

Assignee

Updated

5 months ago
Assignee: nobody → gwatson

Comment 2

5 months ago
Pushed by jmuizelaar@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/8cef8c45741c
Fix an invalidation bug and improve display list correlation. r=kvark

Comment 3

5 months ago
bugherder
Status: NEW → RESOLVED
Closed: 5 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla66
You need to log in before you can comment on or make changes to this bug.