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

save/restore around clipping the (potentially cached) frame canvas #39797

Merged
merged 1 commit into from
Feb 22, 2023

Conversation

flar
Copy link
Contributor

@flar flar commented Feb 22, 2023

This problem was introduced by #37107 where a clipRect call is being executed on the raw canvas of a frame. Since these frames can be cached, that clipRect will persist to future app frames and interfere with the over-view rendering.

This problem was caught during a PR that happened to cause the test case created for #39630 to use a stale frame. It looks like that issue is a race condition so it would be hard to create a specific test case that demonstrates this fix.

@flutter-dashboard
Copy link

It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie on the #hackers channel in Chat (don't just cc him here, he won't see it! He's on Discord!).

If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing.

Copy link
Member

@jonahwilliams jonahwilliams left a comment

Choose a reason for hiding this comment

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

LGTM

@flar flar added the autosubmit Merge PR when tree becomes green via auto submit App label Feb 22, 2023
@auto-submit auto-submit bot merged commit c74a4bc into flutter:main Feb 22, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Feb 22, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Feb 22, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Feb 22, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Feb 22, 2023
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Feb 23, 2023
…121286)

* 0fd15eece Started using bgr10_xr for opaque surfaces. (flutter/engine#39727)

* f0e5c08f7 [platform_view] fix overlapping platform view not touchable (flutter/engine#39527)

* 03b5998b4 Roll Fuchsia Mac SDK from 25mb67G0L_sZ_OQCC... to dj-2XkYHvZUsqlZTc... (flutter/engine#39782)

* 2e5b1bf04 Updated the wide-gamut constant and added a unit test for it. (flutter/engine#39776)

* 1ce93ca0a Roll Dart SDK from 0db7573c6b70 to c9a4fd7fd7fa (1 revision) (flutter/engine#39783)

* 8368fb5b6 Roll Dart SDK from c9a4fd7fd7fa to 5003b952affb (1 revision) (flutter/engine#39787)

* ee5ea205b Roll Dart SDK from 5003b952affb to 6f5df63655ad (1 revision) (flutter/engine#39790)

* d9be356a8 Roll Fuchsia Mac SDK from dj-2XkYHvZUsqlZTc... to cGa3bk2BmrHL_waB8... (flutter/engine#39791)

* 50af61302 [web] Add `dart:js_interop` to BUILD.gn. (flutter/engine#39792)

* eb5e5624d [common] Use FML macro to prevent copy/assignment (flutter/engine#39786)

* 6acfddc78 Add more log when receiving semantics node not part of update (flutter/engine#39777)

* 336e7ce63 Roll Skia from 22b594afb4d3 to 78bad646fe78 (24 revisions) (flutter/engine#39793)

* e65391f8b [Impeller] Add root dockspace to playgrounds (flutter/engine#39789)

* 3848f6429 [Impeller] ensure glyph type contributes to FontGlyphPair hash/eq (flutter/engine#39794)

* cb1ef6f08 Roll Skia from 78bad646fe78 to 335cabcf8b99 (2 revisions) (flutter/engine#39795)

* ac6129db2 made opaque wide gamut images take up 32 bits per pixel (flutter/engine#39691)

* c74a4bc67 save/restore around clipping the (potentially cached) frame canvas (flutter/engine#39797)

* ed3f15d94 [Embedder API] Add CODEOWNERS (flutter/engine#39784)

* 1a3bddcc1 Fix a race in ShellTest.PushBackdropFilterToVisitedPlatformViews (flutter/engine#39798)

* 137caa761 Roll Dart SDK from 6f5df63655ad to 602941be8007 (2 revisions) (flutter/engine#39800)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autosubmit Merge PR when tree becomes green via auto submit App needs tests platform-ios
Projects
None yet
2 participants