Bug 28760

Summary: Patterns created from surface lose alpha channel when set EXTEND_REFLECT
Product: cairo Reporter: Ruslan Kabatsayev <b7.10110111>
Component: generalAssignee: Carl Worth <cworth>
Status: RESOLVED FIXED QA Contact: cairo-bugs mailing list <cairo-bugs>
Severity: normal    
Priority: medium    
Version: 1.8.8   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: Test case
Screenshot

Description Ruslan Kabatsayev 2010-06-25 14:28:06 UTC
Created attachment 36502 [details]
Test case

Setting CAIRO_EXTEND_REFLECT on a pattern created via cairo_pattern_create_for_surface() results in loss of alpha channel. See the test attached - top left quadrant of the window is painted using CAIRO_EXTEND_REFLECT. One would expect the same background as with other extend modes, but it is black instead. Some experimenting shows that the pattern is blended with black instead of being blended with target surface background, not just loses the alpha channel.
Comment 1 Ruslan Kabatsayev 2010-06-25 14:29:21 UTC
Created attachment 36503 [details]
Screenshot

Here's how it looks
Comment 2 Ruslan Kabatsayev 2010-06-25 14:47:36 UTC
Fixed as of 1.9.8

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.