diff options
author | glen@chromium.org <glen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-25 02:07:00 +0000 |
---|---|---|
committer | glen@chromium.org <glen@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-25 02:07:00 +0000 |
commit | 30bcf3718ace8f0ab46be60f318b476b658217b2 (patch) | |
tree | 5fc5a90d6086002db86dfb1aa49de271450a6fd9 /skia/ext/image_operations_unittest.cc | |
parent | 9840e55175f02e7580bbce98c27a4276d5259350 (diff) | |
download | chromium_src-30bcf3718ace8f0ab46be60f318b476b658217b2.zip chromium_src-30bcf3718ace8f0ab46be60f318b476b658217b2.tar.gz chromium_src-30bcf3718ace8f0ab46be60f318b476b658217b2.tar.bz2 |
Attempt to fix the ImageOperations::CreateMaskedBitmap UMR by bringing the unittest code in line with the other tests in image_operations_unittest. My half-educated suspicion is that alpha wasn't getting initted correctly, as a new UMR appeared in the "SkColor alpha_pixel = " line. (Can't verify as all my machines are in boxes).
(This is TBR because the build is red).
TBR=tony
BUG=15762
TEST=Run valgrind/purify as in bug
Review URL: http://codereview.chromium.org/159381
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21610 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'skia/ext/image_operations_unittest.cc')
-rw-r--r-- | skia/ext/image_operations_unittest.cc | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/skia/ext/image_operations_unittest.cc b/skia/ext/image_operations_unittest.cc index 40e63bd..5066683 100644 --- a/skia/ext/image_operations_unittest.cc +++ b/skia/ext/image_operations_unittest.cc @@ -202,19 +202,20 @@ TEST(ImageOperations, CreateMaskedBitmap) { SkBitmap alpha; alpha.setConfig(SkBitmap::kARGB_8888_Config, src_w, src_h); alpha.allocPixels(); - - unsigned char* src_data = - reinterpret_cast<unsigned char*>(alpha.getAddr32(0, 0)); - for (int i = 0; i < src_w * src_h; i++) { - src_data[i * 4] = SkColorSetARGB(i + 128 % 255, - i + 128 % 255, - i + 64 % 255, - i + 0 % 255); + for (int y = 0, i = 0; y < src_h; y++) { + for (int x = 0; x < src_w; x++) { + *alpha.getAddr32(x, y) = SkColorSetARGB(i + 128 % 255, + i + 128 % 255, + i + 64 % 255, + i + 0 % 255); + i++; + } } SkBitmap masked = skia::ImageOperations::CreateMaskedBitmap(src, alpha); SkAutoLockPixels src_lock(src); + SkAutoLockPixels alpha_lock(alpha); SkAutoLockPixels masked_lock(masked); for (int y = 0; y < src_h; y++) { for (int x = 0; x < src_w; x++) { |