aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkPictureData.cpp
diff options
context:
space:
mode:
authorGravatar reed <reed@google.com>2014-09-12 12:12:27 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2014-09-12 12:12:27 -0700
commit9594da111dc1c36c1912eb61207aaa54c17ea550 (patch)
treee923b1b116d1a41d50c949260c57a25f061eebeb /src/core/SkPictureData.cpp
parent9db328b64f8f2eb901499664d92ac7fd236c3cde (diff)
use SkData::NewUninitialized
BUG=skia: R=bungeman@google.com Author: reed@google.com Review URL: https://codereview.chromium.org/565803005
Diffstat (limited to 'src/core/SkPictureData.cpp')
-rw-r--r--src/core/SkPictureData.cpp17
1 files changed, 8 insertions, 9 deletions
diff --git a/src/core/SkPictureData.cpp b/src/core/SkPictureData.cpp
index a2d10e3b9b..656515830c 100644
--- a/src/core/SkPictureData.cpp
+++ b/src/core/SkPictureData.cpp
@@ -390,14 +390,13 @@ bool SkPictureData::parseStreamTag(SkStream* stream,
SkDEBUGCODE(bool haveBuffer = false;)
switch (tag) {
- case SK_PICT_READER_TAG: {
- SkAutoMalloc storage(size);
- if (stream->read(storage.get(), size) != size) {
+ case SK_PICT_READER_TAG:
+ SkASSERT(NULL == fOpData);
+ fOpData = SkData::NewFromStream(stream, size);
+ if (!fOpData) {
return false;
}
- SkASSERT(NULL == fOpData);
- fOpData = SkData::NewFromMalloc(storage.detach(), size);
- } break;
+ break;
case SK_PICT_FACTORY_TAG: {
SkASSERT(!haveBuffer);
// Remove this code when v21 and below are no longer supported. At the
@@ -538,13 +537,13 @@ bool SkPictureData::parseBufferTag(SkReadBuffer& buffer,
}
} break;
case SK_PICT_READER_TAG: {
- SkAutoMalloc storage(size);
- if (!buffer.readByteArray(storage.get(), size) ||
+ SkAutoDataUnref data(SkData::NewUninitialized(size));
+ if (!buffer.readByteArray(data->writable_data(), size) ||
!buffer.validate(NULL == fOpData)) {
return false;
}
SkASSERT(NULL == fOpData);
- fOpData = SkData::NewFromMalloc(storage.detach(), size);
+ fOpData = data.detach();
} break;
case SK_PICT_PICTURE_TAG: {
if (!buffer.validate((0 == fPictureCount) && (NULL == fPictureRefs))) {