diff options
author | Radek Doulik <rodo@novell.com> | 2011-07-12 13:35:43 +0200 |
---|---|---|
committer | Petr Mladek <pmladek@suse.cz> | 2011-07-12 14:31:47 +0200 |
commit | b532753b6665e0f5f4f2b94fffc35dca7c4b578b (patch) | |
tree | 9daecbad083447476bdad59e96445e9ded301f87 | |
parent | 9a233212aba2c53507d9cd4c0a61168286b64b0a (diff) |
fix set color regression in cairo canvas
- the cairo_set_source_rgba should be called with non-alpha-pre-multiplied
color values
- fixes fdo#33591 and fdo#35681
Signed-off-by: Petr Mladek <pmladek@suse.cz>
-rw-r--r-- | canvas/source/cairo/cairo_canvashelper.cxx | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/canvas/source/cairo/cairo_canvashelper.cxx b/canvas/source/cairo/cairo_canvashelper.cxx index 2f1e39b8a19e..ebf0e1aac3e4 100644 --- a/canvas/source/cairo/cairo_canvashelper.cxx +++ b/canvas/source/cairo/cairo_canvashelper.cxx @@ -128,13 +128,11 @@ namespace cairocanvas { if( rColor.getLength() > 3 ) { - const double alpha = rColor[3]; - cairo_set_source_rgba( pCairo, - alpha*rColor[0], - alpha*rColor[1], - alpha*rColor[2], - alpha ); + rColor[0], + rColor[1], + rColor[2], + rColor[3] ); } else if( rColor.getLength() == 3 ) cairo_set_source_rgb( pCairo, |