| Index: skia/ext/bitmap_platform_device_mac.cc
|
| ===================================================================
|
| --- skia/ext/bitmap_platform_device_mac.cc (revision 127021)
|
| +++ skia/ext/bitmap_platform_device_mac.cc (working copy)
|
| @@ -125,11 +125,6 @@
|
| bitmap.setPixels(data);
|
| } else {
|
| data = bitmap.getPixels();
|
| -
|
| - // Note: The Windows implementation clears the Bitmap later on.
|
| - // This bears mentioning since removal of this line makes the
|
| - // unit tests only fail periodically (or when MallocPreScribble is set).
|
| - bitmap.eraseARGB(0, 0, 0, 0);
|
| }
|
|
|
| bitmap.setIsOpaque(is_opaque);
|
| @@ -160,6 +155,15 @@
|
| return rv;
|
| }
|
|
|
| +BitmapPlatformDevice* BitmapPlatformDevice::CreateAndClear(int width,
|
| + int height,
|
| + bool is_opaque) {
|
| + BitmapPlatformDevice* device = Create(NULL, width, height, is_opaque);
|
| + if (!is_opaque)
|
| + device->accessBitmap(true).eraseARGB(0, 0, 0, 0);
|
| + return device;
|
| +}
|
| +
|
| BitmapPlatformDevice* BitmapPlatformDevice::CreateWithData(uint8_t* data,
|
| int width,
|
| int height,
|
| @@ -242,7 +246,9 @@
|
| SkBitmap::Config config, int width, int height, bool isOpaque,
|
| Usage /*usage*/) {
|
| SkASSERT(config == SkBitmap::kARGB_8888_Config);
|
| - return BitmapPlatformDevice::Create(NULL, width, height, isOpaque);
|
| + SkDevice* bitmap_device = BitmapPlatformDevice::CreateAndClear(width, height,
|
| + isOpaque);
|
| + return bitmap_device;
|
| }
|
|
|
| } // namespace skia
|
|
|