author Jim Blandy <jimb@mozilla.com>
Sat, 21 Nov 2020 22:56:42 +0000
changeset 558426 b9e7fd3542fbbef8df76b93100106e2deadfee7a
parent 323906 47dddc6dc461c0c8de11b1571424b3dab5216fbc
permissions -rw-r--r--
Bug 1678108: Invalidate DisplayItemCache entries when nsDisplayItem::RestoreState makes a change. r=miko Partial fix. If nsDisplayItem::RestoreState changes the state of an nsDisplayItem, that invalidates any prior RetainedItems items sent to WebRender for it, and its DisplayItemCache entry is invalid. Clear the cache index in the nsDisplayItem. RetainedDisplayListBuilder::PreProcessDisplayList doesn't have convenient access to the DisplayItemCache, so don't clear the cache entry in the DisplayItemCache. The cache itself will eventually realize the entry is unused and clear it. Differential Revision: https://phabricator.services.mozilla.com/D97538

# Painting multiple complex paths
% http://localhost/tests/svgx/hixie-001.xml
# Painting multiple complex paths with transparency
% http://localhost/tests/svgx/hixie-002.xml
# Painting text
% http://localhost/tests/svgx/hixie-003.xml
# Painting images
% http://localhost/tests/svgx/hixie-004.xml
# Painting linear gradients
% http://localhost/tests/svgx/hixie-005.xml
# Painting radial gradients
% http://localhost/tests/svgx/hixie-006.xml
# World Map
% http://localhost/tests/svgx/hixie-007.xml