remove SkWriteBuffer::getWriter32().
SkWriteBuffer exposes its lower-level implementation SkWriter32 through
this one call. It's not currently used in any interesting way:
- write_encoded_bitmap() uses it to manually re-create writeDataAsByteArray();
- unit tests use it incidentally as a quick way to read the serialized bytes.
This should be SkWriteBuffer no longer necessarily needs to have an SkWriter32.
Landing this will let us then remove SkWriter32::contiguousArray().
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1936563002
TBR=reed@google.com
Just deleting API
Review-Url: https://codereview.chromium.org/1936563002
diff --git a/include/core/SkWriteBuffer.h b/include/core/SkWriteBuffer.h
index 07d6fd1..bd04dec 100644
--- a/include/core/SkWriteBuffer.h
+++ b/include/core/SkWriteBuffer.h
@@ -38,7 +38,6 @@
return SkToBool(fFlags & kCrossProcess_Flag);
}
- SkWriter32* getWriter32() { return &fWriter; }
void reset(void* storage = NULL, size_t storageSize = 0) {
fWriter.reset(storage, storageSize);
}
diff --git a/src/core/SkWriteBuffer.cpp b/src/core/SkWriteBuffer.cpp
index b90a81e..2b35b67 100644
--- a/src/core/SkWriteBuffer.cpp
+++ b/src/core/SkWriteBuffer.cpp
@@ -136,8 +136,7 @@
static void write_encoded_bitmap(SkWriteBuffer* buffer, SkData* data,
const SkIPoint& origin) {
- buffer->writeUInt(SkToU32(data->size()));
- buffer->getWriter32()->writePad(data->data(), data->size());
+ buffer->writeDataAsByteArray(data);
buffer->write32(origin.fX);
buffer->write32(origin.fY);
}
diff --git a/tests/PaintTest.cpp b/tests/PaintTest.cpp
index 253ce86..9865344 100644
--- a/tests/PaintTest.cpp
+++ b/tests/PaintTest.cpp
@@ -258,8 +258,9 @@
SkWriteBuffer writer;
paint.flatten(writer);
- const uint32_t* written = writer.getWriter32()->contiguousArray();
- SkReadBuffer reader(written, writer.bytesWritten());
+ SkAutoMalloc buf(writer.bytesWritten());
+ writer.writeToMemory(buf.get());
+ SkReadBuffer reader(buf.get(), writer.bytesWritten());
SkPaint paint2;
paint2.unflatten(reader);
@@ -297,7 +298,10 @@
SkWriteBuffer writer;
paint.flatten(writer);
- SkReadBuffer reader(writer.getWriter32()->contiguousArray(), writer.bytesWritten());
+ SkAutoMalloc buf(writer.bytesWritten());
+ writer.writeToMemory(buf.get());
+ SkReadBuffer reader(buf.get(), writer.bytesWritten());
+
SkPaint other;
other.unflatten(reader);
ASSERT(reader.offset() == writer.bytesWritten());