Index: skia/ext/bitmap_platform_device.h |
=================================================================== |
--- skia/ext/bitmap_platform_device.h (revision 156622) |
+++ skia/ext/bitmap_platform_device.h (working copy) |
@@ -18,4 +18,19 @@ |
#include "skia/ext/bitmap_platform_device_linux.h" |
#endif |
+namespace skia { |
+ // Returns true if it is unsafe to attempt to allocate an offscreen buffer |
+ // given these dimensions. |
+ inline bool RasterDeviceTooBigToAllocate(int width, int height) { |
+ |
+#ifndef SKIA_EXT_RASTER_DEVICE_ALLOCATION_MAX |
+#define SKIA_EXT_RASTER_DEVICE_ALLOCATION_MAX (256 * 1024 * 1024) |
Stephen White
2012/09/14 21:01:33
Just as a reference, canvas's hardcoded limit is 2
|
+#endif |
+ |
+ int bytesPerPixel = 4; |
+ int64_t bytes = (int64_t)width * height * bytesPerPixel; |
+ return bytes > SKIA_EXT_RASTER_DEVICE_ALLOCATION_MAX; |
+ } |
+} |
+ |
#endif // SKIA_EXT_BITMAP_PLATFORM_DEVICE_H_ |