Sophie

Sophie

distrib > Fedora > 13 > i386 > media > updates-src > by-pkgid > cd8ce32c919af60229fca1d7f792c60e > files > 126

openoffice.org-3.2.0-12.35.fc13.src.rpm

diff --git a/canvas/source/cairo/cairo_canvashelper.cxx b/canvas/source/cairo/cairo_canvashelper.cxx
index 3b3571a..15245f4 100644
--- canvas/source/cairo/cairo_canvashelper.cxx
+++ canvas/source/cairo/cairo_canvashelper.cxx
@@ -1640,12 +1640,12 @@ namespace cairocanvas
                 rendering::RGBColor* pOut( aRes.getArray() );
                 for( sal_Size i=0; i<nLen; i+=4 )
                 {
-                    const sal_Int8 nAlpha(pIn[3]);
-                    if( nAlpha )
+                    const double fAlpha((sal_uInt8)pIn[3]);
+                    if( fAlpha )
                         *pOut++ = rendering::RGBColor(
-                            vcl::unotools::toDoubleColor(pIn[2]/nAlpha),
-                            vcl::unotools::toDoubleColor(pIn[1]/nAlpha),
-                            vcl::unotools::toDoubleColor(pIn[0]/nAlpha));
+                            pIn[2]/fAlpha,
+                            pIn[1]/fAlpha,
+                            pIn[0]/fAlpha);
                     else
                         *pOut++ = rendering::RGBColor(0,0,0);
                     pIn += 4;
@@ -1665,13 +1665,13 @@ namespace cairocanvas
                 rendering::ARGBColor* pOut( aRes.getArray() );
                 for( sal_Size i=0; i<nLen; i+=4 )
                 {
-                    const sal_Int8 nAlpha(pIn[3]);
-                    if( nAlpha )
+                    const double fAlpha((sal_uInt8)pIn[3]);
+                    if( fAlpha )
                         *pOut++ = rendering::ARGBColor(
-                            vcl::unotools::toDoubleColor(nAlpha),
-                            vcl::unotools::toDoubleColor(pIn[2]/nAlpha),
-                            vcl::unotools::toDoubleColor(pIn[1]/nAlpha),
-                            vcl::unotools::toDoubleColor(pIn[0]/nAlpha));
+                            fAlpha/255.0,
+                            pIn[2]/fAlpha,
+                            pIn[1]/fAlpha,
+                            pIn[0]/fAlpha);
                     else
                         *pOut++ = rendering::ARGBColor(0,0,0,0);
                     pIn += 4;