diff options
author | Mike Reed <reed@google.com> | 2017-09-26 12:47:08 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2017-09-26 17:07:16 +0000 |
commit | 98a6216b18b57c2f7a0d58f542c60503686aed69 (patch) | |
tree | 646c987b18faa16aba1db40ea3f98684ad5946d6 /dm | |
parent | 106b5c4917636d3df70ee6f59661ac5fa506d087 (diff) |
guard old apis for querying byte-size of a bitmap/imageinfo/pixmap
Previously we had size_t and uint64_t variations.
The new (simpler) API always..
- returns size_t, or 0 if the calculation overflowed
- returns the trimmed size (does not include rowBytes padding for the last row)
Bug: skia:
Change-Id: I05173e877918327c7b207d2f7f1ab0db36892e2e
Reviewed-on: https://skia-review.googlesource.com/50980
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Diffstat (limited to 'dm')
-rw-r--r-- | dm/DM.cpp | 4 | ||||
-rw-r--r-- | dm/DMSrcSink.cpp | 8 |
2 files changed, 6 insertions, 6 deletions
@@ -1128,9 +1128,9 @@ struct Task { SkBitmap swizzle; SkAssertResult(sk_tool_utils::copy_to(&swizzle, kRGBA_8888_SkColorType, bitmap)); - hash.write(swizzle.getPixels(), swizzle.getSize()); + hash.write(swizzle.getPixels(), swizzle.computeByteSize()); } else { - hash.write(bitmap.getPixels(), bitmap.getSize()); + hash.write(bitmap.getPixels(), bitmap.computeByteSize()); } } SkMD5::Digest digest; diff --git a/dm/DMSrcSink.cpp b/dm/DMSrcSink.cpp index 2a0b59841c..0968aca705 100644 --- a/dm/DMSrcSink.cpp +++ b/dm/DMSrcSink.cpp @@ -454,7 +454,7 @@ Error CodecSrc::draw(SkCanvas* canvas) const { const int bpp = SkColorTypeBytesPerPixel(decodeInfo.colorType()); const size_t rowBytes = size.width() * bpp; - const size_t safeSize = decodeInfo.getSafeSize(rowBytes); + const size_t safeSize = decodeInfo.computeByteSize(rowBytes); SkAutoMalloc pixels(safeSize); SkCodec::Options options; @@ -1468,12 +1468,12 @@ static bool encode_png_base64(const SkBitmap& bitmap, SkString* dst) { static Error compare_bitmaps(const SkBitmap& reference, const SkBitmap& bitmap) { // The dimensions are a property of the Src only, and so should be identical. - SkASSERT(reference.getSize() == bitmap.getSize()); - if (reference.getSize() != bitmap.getSize()) { + SkASSERT(reference.computeByteSize() == bitmap.computeByteSize()); + if (reference.computeByteSize() != bitmap.computeByteSize()) { return "Dimensions don't match reference"; } // All SkBitmaps in DM are tight, so this comparison is easy. - if (0 != memcmp(reference.getPixels(), bitmap.getPixels(), reference.getSize())) { + if (0 != memcmp(reference.getPixels(), bitmap.getPixels(), reference.computeByteSize())) { SkString encoded; SkString errString("Pixels don't match reference"); if (encode_png_base64(reference, &encoded)) { |