summaryrefslogtreecommitdiffstats
path: root/skia
diff options
context:
space:
mode:
authorjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-22 17:46:53 +0000
committerjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-01-22 17:46:53 +0000
commit22c50ca02cff7649dc812786e870a1840c471ffd (patch)
tree0eee187b493022c77253632670f02ef803fe63ca /skia
parenta34f6ad39b9bb1cddafa5b1f60b7771299a99605 (diff)
downloadchromium_src-22c50ca02cff7649dc812786e870a1840c471ffd.zip
chromium_src-22c50ca02cff7649dc812786e870a1840c471ffd.tar.gz
chromium_src-22c50ca02cff7649dc812786e870a1840c471ffd.tar.bz2
Fix regression with SkColor to COLORREF conversions.
COLORREF doesn't support alpha values (except, oddly, on WinCE). So we have to ignore the alpha value. My blind following of the old comment there was wrong, because changing the color value just gives a garbage color. BUG=170645 Review URL: https://codereview.chromium.org/12021028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@178027 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'skia')
-rw-r--r--skia/ext/skia_utils_win.cc17
1 files changed, 3 insertions, 14 deletions
diff --git a/skia/ext/skia_utils_win.cc b/skia/ext/skia_utils_win.cc
index 97d793c..8b72b98 100644
--- a/skia/ext/skia_utils_win.cc
+++ b/skia/ext/skia_utils_win.cc
@@ -54,23 +54,12 @@ SkColor COLORREFToSkColor(COLORREF color) {
}
COLORREF SkColorToCOLORREF(SkColor color) {
- int alpha = SkColorGetA(color);
- if (alpha == 0)
- return 0;
-
- if (alpha == 0xFF) {
- // Fast path.
#ifndef _MSC_VER
- return RGB(SkColorGetR(color), SkColorGetG(color), SkColorGetB(color));
+ return RGB(SkColorGetR(color), SkColorGetG(color), SkColorGetB(color));
#else
- // 0BGR = ((ARGB -> BGRA) >> 8)
- return (_byteswap_ulong(color) >> 8);
+ // 0BGR = ((ARGB -> BGRA) >> 8)
+ return (_byteswap_ulong(color) >> 8);
#endif
- }
-
- return RGB(SkColorGetR(color) * 255 / alpha,
- SkColorGetG(color) * 255 / alpha,
- SkColorGetB(color) * 255 / alpha);
}
} // namespace skia