diff options
author | 2015-05-26 19:22:17 -0700 | |
---|---|---|
committer | 2015-05-26 19:22:17 -0700 | |
commit | 9572a10c9a6a868bbb8f71d7806d0a45f183333f (patch) | |
tree | 0539d48f7217b058a59e917c43d4f0a0156ba7fb /src/utils | |
parent | 4b195e5d8f19ee5ef06ce32cc86473ab7c083e6a (diff) |
don't use accessBitmap
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/1154293002
Diffstat (limited to 'src/utils')
-rw-r--r-- | src/utils/SkCanvasStateUtils.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/utils/SkCanvasStateUtils.cpp b/src/utils/SkCanvasStateUtils.cpp index f7a9447de2..759ba92fc8 100644 --- a/src/utils/SkCanvasStateUtils.cpp +++ b/src/utils/SkCanvasStateUtils.cpp @@ -224,8 +224,8 @@ SkCanvasState* SkCanvasStateUtils::CaptureCanvasState(SkCanvas* canvas) { for (SkCanvas::LayerIter layer(canvas, true/*skipEmptyClips*/); !layer.done(); layer.next()) { // we currently only work for bitmap backed devices - const SkBitmap& bitmap = layer.device()->accessBitmap(true/*changePixels*/); - if (bitmap.empty() || bitmap.isNull() || !bitmap.lockPixelsAreWritable()) { + SkPixmap pmap; + if (!layer.device()->accessPixels(&pmap) || 0 == pmap.width() || 0 == pmap.height()) { return NULL; } @@ -234,10 +234,10 @@ SkCanvasState* SkCanvasStateUtils::CaptureCanvasState(SkCanvas* canvas) { layerState->type = kRaster_CanvasBackend; layerState->x = layer.x(); layerState->y = layer.y(); - layerState->width = bitmap.width(); - layerState->height = bitmap.height(); + layerState->width = pmap.width(); + layerState->height = pmap.height(); - switch (bitmap.colorType()) { + switch (pmap.colorType()) { case kN32_SkColorType: layerState->raster.config = kARGB_8888_RasterConfig; break; @@ -247,8 +247,8 @@ SkCanvasState* SkCanvasStateUtils::CaptureCanvasState(SkCanvas* canvas) { default: return NULL; } - layerState->raster.rowBytes = bitmap.rowBytes(); - layerState->raster.pixels = bitmap.getPixels(); + layerState->raster.rowBytes = pmap.rowBytes(); + layerState->raster.pixels = pmap.writable_addr(); setup_MC_state(&layerState->mcState, layer.matrix(), layer.clip()); layerCount++; |