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
Skip clip masks with tiled blobs, instead of crashing. #3219
Conversation
We don't currently support tiled blobs for clip masks (see issue servo#2852). This patch detects that case, and skips applying a clip mask in that case. It's not ideal, but it's better than crashing inside the resource cache, which is the current behavior.
I think this workaround is OK - the only issue would be if there are any situations in the resource cache where we currently do handle limited cases of clip mask images with tiling that this would regress. Otherwise, it should at least stop the crash for now, until we implement the proper solution in #2852. Pending try: |
cc @gankro @mattwoodrow We'll need to fix #2852 before we consider enabling tiling for all blobs 😞 |
The try run looks good. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
r=me with the comment about the boolean addressed.
@@ -760,7 +773,7 @@ impl ClipItemKey { | |||
pub enum ClipItem { | |||
Rectangle(LayoutRect, ClipMode), | |||
RoundedRectangle(LayoutRect, BorderRadius, ClipMode), | |||
Image(ImageMask), | |||
Image(ImageMask, bool), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please make the boolean a named field or add a comment, It takes a bit of looking around to find what it is for (batch.rs is the only place where the meaning is explicit, and it's not where I'd look first),
I added the comment. @bors-servo r=nical |
📌 Commit 207cfec has been approved by |
Skip clip masks with tiled blobs, instead of crashing. We don't currently support tiled blobs for clip masks (see issue #2852). This patch detects that case, and skips applying a clip mask in that case. It's not ideal, but it's better than crashing inside the resource cache, which is the current behavior. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/webrender/3219) <!-- Reviewable:end -->
☀️ Test successful - status-appveyor, status-taskcluster |
We don't currently support tiled blobs for clip masks (see
issue #2852). This patch detects that case, and skips applying
a clip mask in that case. It's not ideal, but it's better
than crashing inside the resource cache, which is the current
behavior.
This change is