Closed Bug 555388 Opened 15 years ago Closed 15 years ago

Direct2D Clear should flush before copying

Categories

(Core :: Graphics, defect)

x86
Windows 7
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: bas.schouten, Assigned: bas.schouten)

References

Details

Attachments

(2 files)

We should flush before we copy render target content, for two reasons. First of all all clipping layers need to be popped when we call Clear. Second we need all pending operations to be flushed to the texture for the copying we do here.
Attached patch Fix Clear for special cases (deleted) — Splinter Review
Attachment #435343 - Flags: review?(jmuizelaar)
Blocks: 555427
Blocks: 554874
The state management seems a little haphazard here. _cairo_d2d_flush() pops the clipping layers and does an EndDraw() and so we need to add the new BeginDraw() and EndDraw() correct? Do we have or can we get a reftest that shows this bug?
No longer blocks: 554874
Blocks: 554874
Attachment #435717 - Flags: review?(jmuizelaar)
Comment on attachment 435717 [details] [diff] [review] Reftest clearing non rectangular clippaths Looks good. We can land this right away.
Attachment #435717 - Flags: review?(jmuizelaar) → review+
(In reply to comment #4) > (From update of attachment 435717 [details] [diff] [review]) > Looks good. We can land this right away. Can we land the fix as well?
Comment on attachment 435343 [details] [diff] [review] Fix Clear for special cases Looks ok, but please add a comment above _cairo_d2d_clear_geometry about how it mucks with the Begin/EndDraw/clip state.
Attachment #435343 - Flags: review?(jmuizelaar) → review+
Status: ASSIGNED → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
Blocks: 578124
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: