aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkFlattenableSerialization.cpp
diff options
context:
space:
mode:
authorGravatar commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-10-25 21:04:40 +0000
committerGravatar commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-10-25 21:04:40 +0000
commitd25d6c7b8ecd4105157f0293a081549ba32ef968 (patch)
treeb3d624aa741bdbc002acbb1f493cc9bc76348c71 /src/core/SkFlattenableSerialization.cpp
parent10ba006631a0c350aa2bcba188a60404869607c8 (diff)
Enabling validation code in serialization and adding serialization to fuzzer
BUG= R=reed@google.com, mtklein@google.com, senorblanco@chromium.org, bsalomon@google.com Author: sugoi@chromium.org Review URL: https://codereview.chromium.org/44573002 git-svn-id: http://skia.googlecode.com/svn/trunk@11968 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src/core/SkFlattenableSerialization.cpp')
-rw-r--r--src/core/SkFlattenableSerialization.cpp16
1 files changed, 7 insertions, 9 deletions
diff --git a/src/core/SkFlattenableSerialization.cpp b/src/core/SkFlattenableSerialization.cpp
index c6870749e9..b98d935ca7 100644
--- a/src/core/SkFlattenableSerialization.cpp
+++ b/src/core/SkFlattenableSerialization.cpp
@@ -8,14 +8,12 @@
#include "SkFlattenableSerialization.h"
#include "SkData.h"
-#include "SkFlattenable.h"
-#include "SkImageFilter.h"
-#include "SkOrderedReadBuffer.h"
+#include "SkValidatingReadBuffer.h"
#include "SkOrderedWriteBuffer.h"
-SkData* SkSerializeFlattenable(SkFlattenable* flattenable) {
+SkData* SkValidatingSerializeFlattenable(SkFlattenable* flattenable) {
SkOrderedWriteBuffer writer(1024);
- writer.setFlags(SkOrderedWriteBuffer::kCrossProcess_Flag);
+ writer.setFlags(SkOrderedWriteBuffer::kValidation_Flag);
writer.writeFlattenable(flattenable);
uint32_t size = writer.bytesWritten();
void* data = sk_malloc_throw(size);
@@ -23,8 +21,8 @@ SkData* SkSerializeFlattenable(SkFlattenable* flattenable) {
return SkData::NewFromMalloc(data, size);
}
-// TODO: this guy should be renamed to ImageFilter, or take SkFlattenable::Type as a parameter.
-SkFlattenable* SkDeserializeFlattenable(const void* data, size_t size) {
- SkOrderedReadBuffer buffer(data, size);
- return buffer.readImageFilter();
+SkFlattenable* SkValidatingDeserializeFlattenable(const void* data, size_t size,
+ SkFlattenable::Type type) {
+ SkValidatingReadBuffer buffer(data, size);
+ return buffer.readFlattenable(type);
}