aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--bench/nanobench.cpp15
-rw-r--r--dm/DM.cpp6
-rw-r--r--dm/DMJsonWriter.cpp2
-rw-r--r--dm/DMSrcSink.cpp41
-rw-r--r--experimental/GLFWTest/glfw_main.cpp4
-rw-r--r--experimental/SkV8Example/SkV8Example.cpp4
-rw-r--r--experimental/nanomsg/picture_demo.cpp2
-rw-r--r--fuzz/fuzz.cpp16
-rw-r--r--gm/annotated_text.cpp4
-rw-r--r--gm/factory.cpp8
-rw-r--r--gm/internal_links.cpp2
-rw-r--r--gyp/skia_for_android_framework_defines.gypi1
-rw-r--r--include/core/SkData.h6
-rw-r--r--include/gpu/GrResourceKey.h11
-rw-r--r--public.bzl1
-rw-r--r--samplecode/DecodeFile.h4
-rw-r--r--samplecode/SampleLua.cpp3
-rw-r--r--src/codec/SkIcoCodec.cpp5
-rw-r--r--src/codec/SkRawCodec.cpp12
-rw-r--r--src/codec/SkWbmpCodec.cpp3
-rw-r--r--src/core/SkWriteBuffer.cpp12
-rw-r--r--src/gpu/batches/GrTessellatingPathRenderer.cpp3
-rw-r--r--src/image/SkImage_Raster.cpp4
-rw-r--r--src/images/SkKTXImageEncoder.cpp4
-rw-r--r--src/pdf/SkPDFFont.cpp19
-rw-r--r--src/ports/SkFontMgr_android.cpp4
-rw-r--r--src/utils/SkTextureCompressor.cpp7
-rw-r--r--src/utils/SkTextureCompressor.h5
-rw-r--r--tests/AnnotationTest.cpp10
-rw-r--r--tests/CachedDecodingPixelRefTest.cpp2
-rw-r--r--tests/CodecPriv.h2
-rw-r--r--tests/CodecTest.cpp23
-rw-r--r--tests/DataRefTest.cpp31
-rw-r--r--tests/ImageGeneratorTest.cpp6
-rw-r--r--tests/ImageTest.cpp42
-rw-r--r--tests/MallocPixelRefTest.cpp10
-rw-r--r--tests/PDFGlyphsToUnicodeTest.cpp2
-rw-r--r--tests/PDFJpegEmbedTest.cpp9
-rw-r--r--tests/PDFPrimitivesTest.cpp2
-rw-r--r--tests/PathTest.cpp2
-rw-r--r--tests/PictureTest.cpp16
-rw-r--r--tests/ResourceCacheTest.cpp8
-rw-r--r--tests/SerializationTest.cpp22
-rw-r--r--tests/StreamTest.cpp6
-rw-r--r--tests/TextureCompressionTest.cpp8
-rw-r--r--tests/Writer32Test.cpp12
-rw-r--r--tools/Resources.cpp6
-rw-r--r--tools/debugger/SkDrawCommand.cpp6
-rw-r--r--tools/fiddle/fiddle_main.cpp2
-rw-r--r--tools/get_images_from_skps.cpp4
-rw-r--r--tools/lua/lua_app.cpp9
-rw-r--r--tools/lua/lua_pictures.cpp6
-rw-r--r--tools/skdiff_main.cpp18
-rw-r--r--tools/skdiff_utils.cpp4
-rw-r--r--tools/skdiff_utils.h2
-rw-r--r--tools/skhello.cpp4
-rw-r--r--tools/skiaserve/Request.cpp22
-rw-r--r--tools/skiaserve/Request.h12
-rw-r--r--tools/skiaserve/urlhandlers/BatchesHandler.cpp4
-rw-r--r--tools/skiaserve/urlhandlers/CmdHandler.cpp4
-rw-r--r--tools/skiaserve/urlhandlers/DownloadHandler.cpp4
-rw-r--r--tools/skiaserve/urlhandlers/ImgHandler.cpp4
-rw-r--r--tools/skiaserve/urlhandlers/InfoHandler.cpp4
-rw-r--r--tools/visualize_color_gamut.cpp4
64 files changed, 262 insertions, 278 deletions
diff --git a/bench/nanobench.cpp b/bench/nanobench.cpp
index 518383b0e0..6ff2be4b1b 100644
--- a/bench/nanobench.cpp
+++ b/bench/nanobench.cpp
@@ -754,8 +754,8 @@ public:
if (SkCommandLineFlags::ShouldSkip(FLAGS_match, path.c_str())) {
continue;
}
- SkAutoTUnref<SkData> encoded(SkData::NewFromFileName(path.c_str()));
- SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(encoded));
+ sk_sp<SkData> encoded(SkData::MakeFromFileName(path.c_str()));
+ SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(encoded.get()));
if (!codec) {
// Nothing to time.
SkDebugf("Cannot find codec for %s\n", path.c_str());
@@ -815,7 +815,7 @@ public:
case SkCodec::kSuccess:
case SkCodec::kIncompleteInput:
return new CodecBench(SkOSPath::Basename(path.c_str()),
- encoded, colorType, alphaType);
+ encoded.get(), colorType, alphaType);
case SkCodec::kInvalidConversion:
// This is okay. Not all conversions are valid.
break;
@@ -838,8 +838,8 @@ public:
if (SkCommandLineFlags::ShouldSkip(FLAGS_match, path.c_str())) {
continue;
}
- SkAutoTUnref<SkData> encoded(SkData::NewFromFileName(path.c_str()));
- SkAutoTDelete<SkAndroidCodec> codec(SkAndroidCodec::NewFromData(encoded));
+ sk_sp<SkData> encoded(SkData::MakeFromFileName(path.c_str()));
+ SkAutoTDelete<SkAndroidCodec> codec(SkAndroidCodec::NewFromData(encoded.get()));
if (!codec) {
// Nothing to time.
SkDebugf("Cannot find codec for %s\n", path.c_str());
@@ -854,7 +854,8 @@ public:
break;
}
- return new AndroidCodecBench(SkOSPath::Basename(path.c_str()), encoded, sampleSize);
+ return new AndroidCodecBench(SkOSPath::Basename(path.c_str()),
+ encoded.get(), sampleSize);
}
fCurrentSampleSize = 0;
}
@@ -887,7 +888,7 @@ public:
while (fCurrentSampleSize < (int) SK_ARRAY_COUNT(brdSampleSizes)) {
while (fCurrentSubsetType <= kLastSingle_SubsetType) {
- SkAutoTUnref<SkData> encoded(SkData::NewFromFileName(path.c_str()));
+ sk_sp<SkData> encoded(SkData::MakeFromFileName(path.c_str()));
const SkColorType colorType = fColorTypes[fCurrentColorType];
uint32_t sampleSize = brdSampleSizes[fCurrentSampleSize];
int currentSubsetType = fCurrentSubsetType++;
diff --git a/dm/DM.cpp b/dm/DM.cpp
index 7fe6efaf89..4387fde1e1 100644
--- a/dm/DM.cpp
+++ b/dm/DM.cpp
@@ -304,7 +304,7 @@ static SkTHashSet<SkString> gUninterestingHashes;
static void gather_uninteresting_hashes() {
if (!FLAGS_uninterestingHashesFile.isEmpty()) {
- SkAutoTUnref<SkData> data(SkData::NewFromFileName(FLAGS_uninterestingHashesFile[0]));
+ sk_sp<SkData> data(SkData::MakeFromFileName(FLAGS_uninterestingHashesFile[0]));
if (!data) {
info("WARNING: unable to read uninteresting hashes from %s\n",
FLAGS_uninterestingHashesFile[0]);
@@ -489,12 +489,12 @@ static void push_image_gen_src(Path path, ImageGenSrc::Mode mode, SkAlphaType al
}
static void push_codec_srcs(Path path) {
- SkAutoTUnref<SkData> encoded(SkData::NewFromFileName(path.c_str()));
+ sk_sp<SkData> encoded(SkData::MakeFromFileName(path.c_str()));
if (!encoded) {
info("Couldn't read %s.", path.c_str());
return;
}
- SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(encoded));
+ SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(encoded.get()));
if (nullptr == codec.get()) {
info("Couldn't create codec for %s.", path.c_str());
return;
diff --git a/dm/DMJsonWriter.cpp b/dm/DMJsonWriter.cpp
index 7bd8acd6d2..79f308f2ba 100644
--- a/dm/DMJsonWriter.cpp
+++ b/dm/DMJsonWriter.cpp
@@ -95,7 +95,7 @@ void JsonWriter::DumpJson() {
}
bool JsonWriter::ReadJson(const char* path, void(*callback)(BitmapResult)) {
- SkAutoTUnref<SkData> json(SkData::NewFromFileName(path));
+ sk_sp<SkData> json(SkData::MakeFromFileName(path));
if (!json) {
return false;
}
diff --git a/dm/DMSrcSink.cpp b/dm/DMSrcSink.cpp
index f4c8956b25..b6f061677c 100644
--- a/dm/DMSrcSink.cpp
+++ b/dm/DMSrcSink.cpp
@@ -97,11 +97,12 @@ bool BRDSrc::veto(SinkFlags flags) const {
}
static SkBitmapRegionDecoder* create_brd(Path path) {
- SkAutoTUnref<SkData> encoded(SkData::NewFromFileName(path.c_str()));
+ sk_sp<SkData> encoded(SkData::MakeFromFileName(path.c_str()));
if (!encoded) {
return NULL;
}
- return SkBitmapRegionDecoder::Create(encoded, SkBitmapRegionDecoder::kAndroidCodec_Strategy);
+ return SkBitmapRegionDecoder::Create(encoded.get(),
+ SkBitmapRegionDecoder::kAndroidCodec_Strategy);
}
Error BRDSrc::draw(SkCanvas* canvas) const {
@@ -375,12 +376,12 @@ static void draw_to_canvas(SkCanvas* canvas, const SkImageInfo& info, void* pixe
}
Error CodecSrc::draw(SkCanvas* canvas) const {
- SkAutoTUnref<SkData> encoded(SkData::NewFromFileName(fPath.c_str()));
+ sk_sp<SkData> encoded(SkData::MakeFromFileName(fPath.c_str()));
if (!encoded) {
return SkStringPrintf("Couldn't read %s.", fPath.c_str());
}
- SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(encoded));
+ SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(encoded.get()));
if (nullptr == codec.get()) {
return SkStringPrintf("Couldn't create codec for %s.", fPath.c_str());
}
@@ -627,8 +628,8 @@ Error CodecSrc::draw(SkCanvas* canvas) const {
}
SkISize CodecSrc::size() const {
- SkAutoTUnref<SkData> encoded(SkData::NewFromFileName(fPath.c_str()));
- SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(encoded));
+ sk_sp<SkData> encoded(SkData::MakeFromFileName(fPath.c_str()));
+ SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(encoded.get()));
if (nullptr == codec) {
return SkISize::Make(0, 0);
}
@@ -660,11 +661,11 @@ bool AndroidCodecSrc::veto(SinkFlags flags) const {
}
Error AndroidCodecSrc::draw(SkCanvas* canvas) const {
- SkAutoTUnref<SkData> encoded(SkData::NewFromFileName(fPath.c_str()));
+ sk_sp<SkData> encoded(SkData::MakeFromFileName(fPath.c_str()));
if (!encoded) {
return SkStringPrintf("Couldn't read %s.", fPath.c_str());
}
- SkAutoTDelete<SkAndroidCodec> codec(SkAndroidCodec::NewFromData(encoded));
+ SkAutoTDelete<SkAndroidCodec> codec(SkAndroidCodec::NewFromData(encoded.get()));
if (nullptr == codec.get()) {
return SkStringPrintf("Couldn't create android codec for %s.", fPath.c_str());
}
@@ -716,8 +717,8 @@ Error AndroidCodecSrc::draw(SkCanvas* canvas) const {
}
SkISize AndroidCodecSrc::size() const {
- SkAutoTUnref<SkData> encoded(SkData::NewFromFileName(fPath.c_str()));
- SkAutoTDelete<SkAndroidCodec> codec(SkAndroidCodec::NewFromData(encoded));
+ sk_sp<SkData> encoded(SkData::MakeFromFileName(fPath.c_str()));
+ SkAutoTDelete<SkAndroidCodec> codec(SkAndroidCodec::NewFromData(encoded.get()));
if (nullptr == codec) {
return SkISize::Make(0, 0);
}
@@ -756,7 +757,7 @@ Error ImageGenSrc::draw(SkCanvas* canvas) const {
return Error::Nonfatal("Uninteresting to test image generator to 565.");
}
- SkAutoTUnref<SkData> encoded(SkData::NewFromFileName(fPath.c_str()));
+ sk_sp<SkData> encoded(SkData::MakeFromFileName(fPath.c_str()));
if (!encoded) {
return SkStringPrintf("Couldn't read %s.", fPath.c_str());
}
@@ -772,16 +773,16 @@ Error ImageGenSrc::draw(SkCanvas* canvas) const {
SkAutoTDelete<SkImageGenerator> gen(nullptr);
switch (fMode) {
case kCodec_Mode:
- gen.reset(SkCodecImageGenerator::NewFromEncodedCodec(encoded));
+ gen.reset(SkCodecImageGenerator::NewFromEncodedCodec(encoded.get()));
if (!gen) {
return "Could not create codec image generator.";
}
break;
case kPlatform_Mode: {
#if defined(SK_BUILD_FOR_MAC) || defined(SK_BUILD_FOR_IOS)
- gen.reset(SkImageGeneratorCG::NewFromEncodedCG(encoded));
+ gen.reset(SkImageGeneratorCG::NewFromEncodedCG(encoded.get()));
#elif defined(SK_BUILD_FOR_WIN)
- gen.reset(SkImageGeneratorWIC::NewFromEncodedWIC(encoded));
+ gen.reset(SkImageGeneratorWIC::NewFromEncodedWIC(encoded.get()));
#endif
if (!gen) {
@@ -823,8 +824,8 @@ Error ImageGenSrc::draw(SkCanvas* canvas) const {
}
SkISize ImageGenSrc::size() const {
- SkAutoTUnref<SkData> encoded(SkData::NewFromFileName(fPath.c_str()));
- SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(encoded));
+ sk_sp<SkData> encoded(SkData::MakeFromFileName(fPath.c_str()));
+ SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(encoded.get()));
if (nullptr == codec) {
return SkISize::Make(0, 0);
}
@@ -857,12 +858,12 @@ Error ColorCodecSrc::draw(SkCanvas* canvas) const {
return Error::Nonfatal("F16 does not draw in legacy mode.");
}
- SkAutoTUnref<SkData> encoded(SkData::NewFromFileName(fPath.c_str()));
+ sk_sp<SkData> encoded(SkData::MakeFromFileName(fPath.c_str()));
if (!encoded) {
return SkStringPrintf("Couldn't read %s.", fPath.c_str());
}
- SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(encoded));
+ SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(encoded.get()));
if (nullptr == codec.get()) {
return SkStringPrintf("Couldn't create codec for %s.", fPath.c_str());
}
@@ -956,8 +957,8 @@ Error ColorCodecSrc::draw(SkCanvas* canvas) const {
}
SkISize ColorCodecSrc::size() const {
- SkAutoTUnref<SkData> encoded(SkData::NewFromFileName(fPath.c_str()));
- SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(encoded));
+ sk_sp<SkData> encoded(SkData::MakeFromFileName(fPath.c_str()));
+ SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(encoded.get()));
if (nullptr == codec) {
return SkISize::Make(0, 0);
}
diff --git a/experimental/GLFWTest/glfw_main.cpp b/experimental/GLFWTest/glfw_main.cpp
index bf91760ac0..a8ca7ea97e 100644
--- a/experimental/GLFWTest/glfw_main.cpp
+++ b/experimental/GLFWTest/glfw_main.cpp
@@ -83,8 +83,8 @@ int main(void) {
float times[32];
int currentTime;
- SkAutoTUnref<SkData> imageData(SkData::NewFromFileName("ship.png"));
- atlas.reset(SkImage::NewFromEncoded(imageData));
+ sk_sp<SkData> imageData(SkData::MakeFromFileName("ship.png"));
+ atlas.reset(SkImage::NewFromEncoded(imageData.get()));
if (!atlas) {
SkDebugf("\nCould not decode file ship.png\n");
diff --git a/experimental/SkV8Example/SkV8Example.cpp b/experimental/SkV8Example/SkV8Example.cpp
index 3882c3e9b3..5bfd64d6e2 100644
--- a/experimental/SkV8Example/SkV8Example.cpp
+++ b/experimental/SkV8Example/SkV8Example.cpp
@@ -200,9 +200,9 @@ SkOSWindow* create_sk_window(void* hwnd, int argc, char** argv) {
" canvas.inval(); \n"
"} \n";
- SkAutoTUnref<SkData> data;
+ sk_sp<SkData> data;
if (FLAGS_infile.count()) {
- data.reset(SkData::NewFromFileName(FLAGS_infile[0]));
+ data = SkData::MakeFromFileName(FLAGS_infile[0]);
script = static_cast<const char*>(data->data());
}
if (NULL == script) {
diff --git a/experimental/nanomsg/picture_demo.cpp b/experimental/nanomsg/picture_demo.cpp
index 859f20e96c..a0b83a2579 100644
--- a/experimental/nanomsg/picture_demo.cpp
+++ b/experimental/nanomsg/picture_demo.cpp
@@ -80,7 +80,7 @@ static sk_sp<SkPicture> recv_picture(int socket, PictureHeader* header) {
static void client(const char* skpPath, const char* dataEndpoint) {
// Read the .skp.
- SkAutoTUnref<const SkData> skp(SkData::NewFromFileName(skpPath));
+ sk_sp<SkData> skp(SkData::MakeFromFileName(skpPath));
if (!skp) {
SkDebugf("Couldn't read %s\n", skpPath);
exit(1);
diff --git a/fuzz/fuzz.cpp b/fuzz/fuzz.cpp
index 4ca253343d..d2dc787dbe 100644
--- a/fuzz/fuzz.cpp
+++ b/fuzz/fuzz.cpp
@@ -44,31 +44,31 @@ int main(int argc, char** argv) {
SkCommandLineFlags::Parse(argc, argv);
const char* path = FLAGS_bytes.isEmpty() ? argv[0] : FLAGS_bytes[0];
- SkAutoTUnref<SkData> bytes(SkData::NewFromFileName(path));
+ sk_sp<SkData> bytes(SkData::MakeFromFileName(path));
if (!bytes) {
SkDebugf("Could not read %s\n", path);
return 2;
}
- uint8_t option = calculate_option(bytes);
+ uint8_t option = calculate_option(bytes.get());
if (!FLAGS_type.isEmpty()) {
switch (FLAGS_type[0][0]) {
- case 'a': return fuzz_api(bytes);
+ case 'a': return fuzz_api(bytes.get());
- case 'c': return fuzz_color_deserialize(bytes);
+ case 'c': return fuzz_color_deserialize(bytes.get());
case 'i':
if (FLAGS_type[0][1] == 'c') { //icc
- return fuzz_icc(bytes);
+ return fuzz_icc(bytes.get());
}
// We only allow one degree of freedom to avoid a search space explosion for afl-fuzz.
if (FLAGS_type[0][6] == 's') { // image_scale
- return fuzz_img(bytes, option, 0);
+ return fuzz_img(bytes.get(), option, 0);
}
// image_mode
- return fuzz_img(bytes, 0, option);
- case 's': return fuzz_skp(bytes);
+ return fuzz_img(bytes.get(), 0, option);
+ case 's': return fuzz_skp(bytes.get());
}
}
return printUsage(argv[0]);
diff --git a/gm/annotated_text.cpp b/gm/annotated_text.cpp
index 30f67b0201..70ee9f3de1 100644
--- a/gm/annotated_text.cpp
+++ b/gm/annotated_text.cpp
@@ -16,8 +16,8 @@ static void draw_url_annotated_text_with_box(
SkRect bounds;
(void)paint.measureText(text, byteLength, &bounds);
bounds.offset(x, y);
- SkAutoTUnref<SkData> urlData(SkData::NewWithCString(url));
- SkAnnotateRectWithURL(canvas, bounds, urlData);
+ sk_sp<SkData> urlData(SkData::MakeWithCString(url));
+ SkAnnotateRectWithURL(canvas, bounds, urlData.get());
SkPaint shade;
shade.setColor(0x80346180);
canvas->drawRect(bounds, shade);
diff --git a/gm/factory.cpp b/gm/factory.cpp
index 831cff0b9f..dfecd167f9 100644
--- a/gm/factory.cpp
+++ b/gm/factory.cpp
@@ -29,15 +29,15 @@ protected:
void onOnceBeforeDraw() override {
// Copyright-free file from http://openclipart.org/detail/29213/paper-plane-by-ddoo
SkString pngFilename = GetResourcePath("plane.png");
- SkAutoDataUnref data(SkData::NewFromFileName(pngFilename.c_str()));
- if (data.get()) {
+ sk_sp<SkData> data(SkData::MakeFromFileName(pngFilename.c_str()));
+ if (data) {
// Create a cache which will boot the pixels out anytime the
// bitmap is unlocked.
SkAutoTUnref<SkDiscardableMemoryPool> pool(
SkDiscardableMemoryPool::Create(1));
SkAssertResult(SkDEPRECATED_InstallDiscardablePixelRef(
- SkImageGenerator::NewFromEncoded(data),
- nullptr, &fBitmap, pool));
+ SkImageGenerator::NewFromEncoded(data.get()),
+ nullptr, &fBitmap, pool));
}
}
diff --git a/gm/internal_links.cpp b/gm/internal_links.cpp
index 995cd69d42..6d70c1ef98 100644
--- a/gm/internal_links.cpp
+++ b/gm/internal_links.cpp
@@ -32,7 +32,7 @@ protected:
}
virtual void onDraw(SkCanvas* canvas) {
- SkAutoTUnref<SkData> name(SkData::NewWithCString("target-a"));
+ sk_sp<SkData> name(SkData::MakeWithCString("target-a"));
canvas->save();
canvas->translate(SkIntToScalar(100), SkIntToScalar(100));
diff --git a/gyp/skia_for_android_framework_defines.gypi b/gyp/skia_for_android_framework_defines.gypi
index 0a0f50f7a6..4446c586e1 100644
--- a/gyp/skia_for_android_framework_defines.gypi
+++ b/gyp/skia_for_android_framework_defines.gypi
@@ -30,6 +30,7 @@
'SK_SUPPORT_LEGACY_XFERMODE_PTR',
'SK_SUPPORT_LEGACY_TYPEFACE_PTR',
'SK_IGNORE_GPU_DITHER',
+ 'SK_SUPPORT_LEGACY_DATA_FACTORIES',
],
},
}
diff --git a/include/core/SkData.h b/include/core/SkData.h
index e34d861675..4306208f69 100644
--- a/include/core/SkData.h
+++ b/include/core/SkData.h
@@ -14,10 +14,6 @@
class SkStream;
-#ifndef SK_SUPPORT_LEGACY_DATA_FACTORIES
-#define SK_SUPPORT_LEGACY_DATA_FACTORIES
-#endif
-
/**
* SkData holds an immutable data buffer. Not only is the data immutable,
* but the actual ptr that is returned (by data() or bytes()) is guaranteed
@@ -71,7 +67,9 @@ public:
* effectively returning 0 == memcmp(...)
*/
bool equals(const SkData* other) const;
+#ifdef SK_SUPPORT_LEGACY_DATA_FACTORIES
bool equals(sk_sp<const SkData>& other) const { return this->equals(other.get()); }
+#endif
/**
* Function that, if provided, will be called when the SkData goes out
diff --git a/include/gpu/GrResourceKey.h b/include/gpu/GrResourceKey.h
index 9f8063d955..0ead35ea3f 100644
--- a/include/gpu/GrResourceKey.h
+++ b/include/gpu/GrResourceKey.h
@@ -238,7 +238,7 @@ public:
GrUniqueKey& operator=(const GrUniqueKey& that) {
this->INHERITED::operator=(that);
- this->setCustomData(that.getCustomData());
+ this->setCustomData(sk_ref_sp(that.getCustomData()));
return *this;
}
@@ -247,11 +247,10 @@ public:
}
bool operator!=(const GrUniqueKey& that) const { return !(*this == that); }
- void setCustomData(const SkData* data) {
- SkSafeRef(data);
- fData.reset(data);
+ void setCustomData(sk_sp<SkData> data) {
+ fData = std::move(data);
}
- const SkData* getCustomData() const {
+ SkData* getCustomData() const {
return fData.get();
}
@@ -280,7 +279,7 @@ public:
};
private:
- SkAutoTUnref<const SkData> fData;
+ sk_sp<SkData> fData;
};
/**
diff --git a/public.bzl b/public.bzl
index cc83dcf401..573488814e 100644
--- a/public.bzl
+++ b/public.bzl
@@ -617,6 +617,7 @@ DEFINES_ALL = [
"SK_SUPPORT_LEGACY_PICTURE_PTR",
"SK_SUPPORT_LEGACY_TYPEFACE_PTR",
"SK_SUPPORT_LEGACY_XFERMODE_PTR",
+ "SK_SUPPORT_LEGACY_DATA_FACTORIES",
]
################################################################################
diff --git a/samplecode/DecodeFile.h b/samplecode/DecodeFile.h
index 26d5d2dc26..3995238bd0 100644
--- a/samplecode/DecodeFile.h
+++ b/samplecode/DecodeFile.h
@@ -12,8 +12,8 @@
inline bool decode_file(const char* filename, SkBitmap* bitmap,
SkColorType colorType = kN32_SkColorType, bool requireUnpremul = false) {
SkASSERT(kIndex_8_SkColorType != colorType);
- SkAutoTUnref<SkData> data(SkData::NewFromFileName(filename));
- SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(data));
+ sk_sp<SkData> data(SkData::MakeFromFileName(filename));
+ SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(data.get()));
if (!codec) {
return false;
}
diff --git a/samplecode/SampleLua.cpp b/samplecode/SampleLua.cpp
index 96b15b91b8..4d492f488c 100644
--- a/samplecode/SampleLua.cpp
+++ b/samplecode/SampleLua.cpp
@@ -60,10 +60,9 @@ public:
fLua = new SkLua;
SkString str = GetResourcePath(LUA_FILENAME);
- SkData* data = SkData::NewFromFileName(str.c_str());
+ sk_sp<SkData> data(SkData::MakeFromFileName(str.c_str()));
if (data) {
fLua->runCode(data->data(), data->size());
- data->unref();
this->setImageFilename(fLua->get());
} else {
fLua->runCode(gMissingCode);
diff --git a/src/codec/SkIcoCodec.cpp b/src/codec/SkIcoCodec.cpp
index 0e81b72407..45000b636f 100644
--- a/src/codec/SkIcoCodec.cpp
+++ b/src/codec/SkIcoCodec.cpp
@@ -128,13 +128,12 @@ SkCodec* SkIcoCodec::NewFromStream(SkStream* stream) {
bytesRead = offset;
// Create a new stream for the embedded codec
- SkAutoTUnref<SkData> data(
- SkData::NewFromStream(inputStream.get(), size));
+ sk_sp<SkData> data(SkData::MakeFromStream(inputStream.get(), size));
if (nullptr == data.get()) {
SkCodecPrintf("Warning: could not create embedded stream.\n");
break;
}
- SkAutoTDelete<SkMemoryStream> embeddedStream(new SkMemoryStream(data.get()));
+ SkAutoTDelete<SkMemoryStream> embeddedStream(new SkMemoryStream(data));
bytesRead += size;
// Check if the embedded codec is bmp or png and create the codec
diff --git a/src/codec/SkRawCodec.cpp b/src/codec/SkRawCodec.cpp
index 9c32e709d8..37d2d358ae 100644
--- a/src/codec/SkRawCodec.cpp
+++ b/src/codec/SkRawCodec.cpp
@@ -257,7 +257,7 @@ public:
}
SkMemoryStream* transferBuffer(size_t offset, size_t size) override {
- SkAutoTUnref<SkData> data(SkData::NewUninitialized(size));
+ sk_sp<SkData> data(SkData::MakeUninitialized(size));
if (offset > fStreamBuffer.bytesWritten()) {
// If the offset is not buffered, read from fStream directly and skip the buffering.
const size_t skipLength = offset - fStreamBuffer.bytesWritten();
@@ -266,7 +266,7 @@ public:
}
const size_t bytesRead = fStream->read(data->writable_data(), size);
if (bytesRead < size) {
- data.reset(SkData::NewSubset(data.get(), 0, bytesRead));
+ data = SkData::MakeSubset(data.get(), 0, bytesRead);
}
} else {
const size_t alreadyBuffered = SkTMin(fStreamBuffer.bytesWritten() - offset, size);
@@ -284,7 +284,7 @@ public:
if (!safe_add_to_size_t(alreadyBuffered, bytesRead, &newSize)) {
return nullptr;
}
- data.reset(SkData::NewSubset(data.get(), 0, newSize));
+ data = SkData::MakeSubset(data.get(), 0, newSize);
}
}
}
@@ -379,18 +379,18 @@ public:
}
if (fStream->getMemoryBase()) { // directly copy if getMemoryBase() is available.
- SkAutoTUnref<SkData> data(SkData::NewWithCopy(
+ sk_sp<SkData> data(SkData::MakeWithCopy(
static_cast<const uint8_t*>(fStream->getMemoryBase()) + offset, bytesToRead));
fStream.reset();
return new SkMemoryStream(data);
} else {
- SkAutoTUnref<SkData> data(SkData::NewUninitialized(bytesToRead));
+ sk_sp<SkData> data(SkData::MakeUninitialized(bytesToRead));
if (!fStream->seek(offset)) {
return nullptr;
}
const size_t bytesRead = fStream->read(data->writable_data(), bytesToRead);
if (bytesRead < bytesToRead) {
- data.reset(SkData::NewSubset(data.get(), 0, bytesRead));
+ data = SkData::MakeSubset(data.get(), 0, bytesRead);
}
return new SkMemoryStream(data);
}
diff --git a/src/codec/SkWbmpCodec.cpp b/src/codec/SkWbmpCodec.cpp
index 326fc2206a..099b6e472a 100644
--- a/src/codec/SkWbmpCodec.cpp
+++ b/src/codec/SkWbmpCodec.cpp
@@ -155,8 +155,7 @@ SkCodec::Result SkWbmpCodec::onGetPixels(const SkImageInfo& info,
}
bool SkWbmpCodec::IsWbmp(const void* buffer, size_t bytesRead) {
- SkAutoTUnref<SkData> data(SkData::NewWithoutCopy(buffer, bytesRead));
- SkMemoryStream stream(data);
+ SkMemoryStream stream(buffer, bytesRead, false);
return read_header(&stream, nullptr);
}
diff --git a/src/core/SkWriteBuffer.cpp b/src/core/SkWriteBuffer.cpp
index ccf1f37dd8..e954399b09 100644
--- a/src/core/SkWriteBuffer.cpp
+++ b/src/core/SkWriteBuffer.cpp
@@ -144,13 +144,13 @@ void SkBinaryWriteBuffer::writeBitmap(const SkBitmap& bitmap) {
SkPixelRef* pixelRef = bitmap.pixelRef();
if (pixelRef) {
// see if the pixelref already has an encoded version
- SkAutoDataUnref existingData(pixelRef->refEncodedData());
- if (existingData.get() != nullptr) {
+ sk_sp<SkData> existingData(pixelRef->refEncodedData());
+ if (existingData) {
// Assumes that if the client did not set a serializer, they are
// happy to get the encoded data.
if (!fPixelSerializer || fPixelSerializer->useEncodedData(existingData->data(),
existingData->size())) {
- write_encoded_bitmap(this, existingData, bitmap.pixelRefOrigin());
+ write_encoded_bitmap(this, existingData.get(), bitmap.pixelRefOrigin());
return;
}
}
@@ -158,11 +158,11 @@ void SkBinaryWriteBuffer::writeBitmap(const SkBitmap& bitmap) {
// see if the caller wants to manually encode
SkAutoPixmapUnlock result;
if (fPixelSerializer && bitmap.requestLock(&result)) {
- SkAutoDataUnref data(fPixelSerializer->encode(result.pixmap()));
- if (data.get() != nullptr) {
+ sk_sp<SkData> data(fPixelSerializer->encode(result.pixmap()));
+ if (data) {
// if we have to "encode" the bitmap, then we assume there is no
// offset to share, since we are effectively creating a new pixelref
- write_encoded_bitmap(this, data, SkIPoint::Make(0, 0));
+ write_encoded_bitmap(this, data.get(), SkIPoint::Make(0, 0));
return;
}
}
diff --git a/src/gpu/batches/GrTessellatingPathRenderer.cpp b/src/gpu/batches/GrTessellatingPathRenderer.cpp
index 6dce9f73c8..b2c3138aed 100644
--- a/src/gpu/batches/GrTessellatingPathRenderer.cpp
+++ b/src/gpu/batches/GrTessellatingPathRenderer.cpp
@@ -187,8 +187,7 @@ private:
TessInfo info;
info.fTolerance = isLinear ? 0 : tol;
info.fCount = count;
- SkAutoTUnref<SkData> data(SkData::NewWithCopy(&info, sizeof(info)));
- key.setCustomData(data.get());
+ key.setCustomData(SkData::MakeWithCopy(&info, sizeof(info)));
rp->assignUniqueKeyToResource(key, allocator.vertexBuffer());
}
diff --git a/src/image/SkImage_Raster.cpp b/src/image/SkImage_Raster.cpp
index 3282e7b7ed..192a4e03ec 100644
--- a/src/image/SkImage_Raster.cpp
+++ b/src/image/SkImage_Raster.cpp
@@ -214,7 +214,7 @@ sk_sp<SkImage> SkImage::MakeRasterCopy(const SkPixmap& pmap) {
}
// Here we actually make a copy of the caller's pixel data
- sk_sp<SkData> data(SkData::NewWithCopy(pmap.addr(), size));
+ sk_sp<SkData> data(SkData::MakeWithCopy(pmap.addr(), size));
return sk_make_sp<SkImage_Raster>(pmap.info(), std::move(data), pmap.rowBytes(), pmap.ctable());
}
@@ -242,7 +242,7 @@ sk_sp<SkImage> SkImage::MakeFromRaster(const SkPixmap& pmap, RasterReleaseProc p
return nullptr;
}
- sk_sp<SkData> data(SkData::NewWithProc(pmap.addr(), size, proc, ctx));
+ sk_sp<SkData> data(SkData::MakeWithProc(pmap.addr(), size, proc, ctx));
return sk_make_sp<SkImage_Raster>(pmap.info(), std::move(data), pmap.rowBytes(), pmap.ctable());
}
diff --git a/src/images/SkKTXImageEncoder.cpp b/src/images/SkKTXImageEncoder.cpp
index 4b318a240c..078cec6b4d 100644
--- a/src/images/SkKTXImageEncoder.cpp
+++ b/src/images/SkKTXImageEncoder.cpp
@@ -46,13 +46,13 @@ bool SkKTXImageEncoder::onEncode(SkWStream* stream, const SkBitmap& bitmap, int)
if (!bitmap.pixelRef()) {
return false;
}
- SkAutoDataUnref data(bitmap.pixelRef()->refEncodedData());
+ sk_sp<SkData> data(bitmap.pixelRef()->refEncodedData());
// Is this even encoded data?
if (data) {
const uint8_t *bytes = data->bytes();
if (etc1_pkm_is_valid(bytes)) {
- return this->encodePKM(stream, data);
+ return this->encodePKM(stream, data.get());
}
// Is it a KTX file??
diff --git a/src/pdf/SkPDFFont.cpp b/src/pdf/SkPDFFont.cpp
index 2fc408efc7..0481963029 100644
--- a/src/pdf/SkPDFFont.cpp
+++ b/src/pdf/SkPDFFont.cpp
@@ -152,8 +152,8 @@ int8_t hexToBin(uint8_t c) {
return -1;
}
-static SkData* handle_type1_stream(SkStream* srcStream, size_t* headerLen,
- size_t* dataLen, size_t* trailerLen) {
+static sk_sp<SkData> handle_type1_stream(SkStream* srcStream, size_t* headerLen,
+ size_t* dataLen, size_t* trailerLen) {
// srcStream may be backed by a file or a unseekable fd, so we may not be
// able to use skip(), rewind(), or getMemoryBase(). read()ing through
// the input only once is doable, but very ugly. Furthermore, it'd be nice
@@ -161,7 +161,7 @@ static SkData* handle_type1_stream(SkStream* srcStream, size_t* headerLen,
// Make as few copies as possible given these constraints.
SkDynamicMemoryWStream dynamicStream;
std::unique_ptr<SkMemoryStream> staticStream;
- SkData* data = nullptr;
+ sk_sp<SkData> data;
const uint8_t* src;
size_t srcLen;
if ((srcLen = srcStream->getLength()) > 0) {
@@ -191,22 +191,18 @@ static SkData* handle_type1_stream(SkStream* srcStream, size_t* headerLen,
}
amount = 0;
dynamicStream.write(&amount, 1); // nullptr terminator.
- data = dynamicStream.copyToData();
+ data.reset(dynamicStream.copyToData());
src = data->bytes();
srcLen = data->size() - 1;
}
- // this handles releasing the data we may have gotten from dynamicStream.
- // if data is null, it is a no-op
- SkAutoDataUnref aud(data);
-
if (parsePFB(src, srcLen, headerLen, dataLen, trailerLen)) {
static const int kPFBSectionHeaderLength = 6;
const size_t length = *headerLen + *dataLen + *trailerLen;
SkASSERT(length > 0);
SkASSERT(length + (2 * kPFBSectionHeaderLength) <= srcLen);
- SkData* data = SkData::NewUninitialized(length);
+ sk_sp<SkData> data(SkData::MakeUninitialized(length));
const uint8_t* const srcHeader = src + kPFBSectionHeaderLength;
// There is a six-byte section header before header and data
@@ -265,7 +261,7 @@ static SkData* handle_type1_stream(SkStream* srcStream, size_t* headerLen,
uint8_t* const resultTrailer = &(buffer[SkToInt(*headerLen + outputOffset)]);
memcpy(resultTrailer, src + *headerLen + hexDataLen, *trailerLen);
- return SkData::NewFromMalloc(buffer.release(), length);
+ return SkData::MakeFromMalloc(buffer.release(), length);
}
return nullptr;
}
@@ -1191,8 +1187,7 @@ bool SkPDFType1Font::addFontDescriptor(int16_t defaultWidth) {
if (!rawFontData || 0 == rawFontData->getLength()) {
return false;
}
- sk_sp<SkData> fontData(handle_type1_stream(rawFontData.get(), &header,
- &data, &trailer));
+ sk_sp<SkData> fontData(handle_type1_stream(rawFontData.get(), &header, &data, &trailer));
if (fontData.get() == nullptr) {
return false;
}
diff --git a/src/ports/SkFontMgr_android.cpp b/src/ports/SkFontMgr_android.cpp
index 23c950d01d..94d114d07a 100644
--- a/src/ports/SkFontMgr_android.cpp
+++ b/src/ports/SkFontMgr_android.cpp
@@ -75,8 +75,8 @@ public:
SkStreamAsset* createStream() const {
if (fFile) {
- SkData* data = SkData::NewFromFILE(fFile);
- return data ? new SkMemoryStream(data) : nullptr;
+ sk_sp<SkData> data(SkData::MakeFromFILE(fFile));
+ return data ? new SkMemoryStream(std::move(data)) : nullptr;
}
return SkStream::NewFromFile(fPathName.c_str());
}
diff --git a/src/utils/SkTextureCompressor.cpp b/src/utils/SkTextureCompressor.cpp
index 086214ec59..e9e4d2e826 100644
--- a/src/utils/SkTextureCompressor.cpp
+++ b/src/utils/SkTextureCompressor.cpp
@@ -145,19 +145,18 @@ bool CompressBufferToFormat(uint8_t* dst, const uint8_t* src, SkColorType srcCol
return false;
}
-SkData* CompressBitmapToFormat(const SkPixmap& pixmap, Format format) {
+sk_sp<SkData> CompressBitmapToFormat(const SkPixmap& pixmap, Format format) {
int compressedDataSize = GetCompressedDataSize(format, pixmap.width(), pixmap.height());
if (compressedDataSize < 0) {
return nullptr;
}
const uint8_t* src = reinterpret_cast<const uint8_t*>(pixmap.addr());
- SkData* dst = SkData::NewUninitialized(compressedDataSize);
+ sk_sp<SkData> dst(SkData::MakeUninitialized(compressedDataSize));
if (!CompressBufferToFormat((uint8_t*)dst->writable_data(), src, pixmap.colorType(),
pixmap.width(), pixmap.height(), pixmap.rowBytes(), format)) {
- dst->unref();
- dst = nullptr;
+ return nullptr;
}
return dst;
}
diff --git a/src/utils/SkTextureCompressor.h b/src/utils/SkTextureCompressor.h
index d4d48967a3..1ae4aef132 100644
--- a/src/utils/SkTextureCompressor.h
+++ b/src/utils/SkTextureCompressor.h
@@ -56,9 +56,8 @@ namespace SkTextureCompressor {
// Returns an SkData holding a blob of compressed data that corresponds
// to the pixmap. If the pixmap colorType cannot be compressed using the
- // associated format, then we return nullptr. The caller is responsible for
- // calling unref() on the returned data.
- SkData* CompressBitmapToFormat(const SkPixmap&, Format format);
+ // associated format, then we return nullptr.
+ sk_sp<SkData> CompressBitmapToFormat(const SkPixmap&, Format format);
// Compresses the given src data into dst. The src data is assumed to be
// large enough to hold width*height pixels. The dst data is expected to
diff --git a/tests/AnnotationTest.cpp b/tests/AnnotationTest.cpp
index 400d4887bd..a4109c5e54 100644
--- a/tests/AnnotationTest.cpp
+++ b/tests/AnnotationTest.cpp
@@ -31,7 +31,7 @@ DEF_TEST(Annotation_NoDraw, reporter) {
SkCanvas canvas(bm);
SkRect r = SkRect::MakeWH(SkIntToScalar(10), SkIntToScalar(10));
- SkAutoDataUnref data(SkData::NewWithCString("http://www.gooogle.com"));
+ sk_sp<SkData> data(SkData::MakeWithCString("http://www.gooogle.com"));
REPORTER_ASSERT(reporter, 0 == *bm.getAddr32(0, 0));
SkAnnotateRectWithURL(&canvas, r, data.get());
@@ -47,11 +47,11 @@ DEF_TEST(Annotation_PdfLink, reporter) {
SkRect r = SkRect::MakeXYWH(SkIntToScalar(72), SkIntToScalar(72),
SkIntToScalar(288), SkIntToScalar(72));
- SkAutoDataUnref data(SkData::NewWithCString("http://www.gooogle.com"));
+ sk_sp<SkData> data(SkData::MakeWithCString("http://www.gooogle.com"));
SkAnnotateRectWithURL(canvas, r, data.get());
REPORTER_ASSERT(reporter, doc->close());
- SkAutoDataUnref out(outStream.copyToData());
+ sk_sp<SkData> out(outStream.copyToData());
const char* rawOutput = (const char*)out->data();
REPORTER_ASSERT(reporter, ContainsString(rawOutput, out->size(), "/Annots "));
@@ -65,11 +65,11 @@ DEF_TEST(Annotation_NamedDestination, reporter) {
REPORTER_ASSERT(reporter, canvas);
SkPoint p = SkPoint::Make(SkIntToScalar(72), SkIntToScalar(72));
- SkAutoDataUnref data(SkData::NewWithCString("example"));
+ sk_sp<SkData> data(SkData::MakeWithCString("example"));
SkAnnotateNamedDestination(canvas, p, data.get());
REPORTER_ASSERT(reporter, doc->close());
- SkAutoDataUnref out(outStream.copyToData());
+ sk_sp<SkData> out(outStream.copyToData());
const char* rawOutput = (const char*)out->data();
REPORTER_ASSERT(reporter,
diff --git a/tests/CachedDecodingPixelRefTest.cpp b/tests/CachedDecodingPixelRefTest.cpp
index da4a111b28..1c89895d0b 100644
--- a/tests/CachedDecodingPixelRefTest.cpp
+++ b/tests/CachedDecodingPixelRefTest.cpp
@@ -107,7 +107,7 @@ static void test_three_encodings(skiatest::Reporter* reporter,
};
for (size_t i = 0; i < SK_ARRAY_COUNT(types); i++) {
SkImageEncoder::Type type = types[i];
- SkAutoDataUnref encoded(create_data_from_bitmap(original, type));
+ sk_sp<SkData> encoded(create_data_from_bitmap(original, type));
REPORTER_ASSERT(reporter, encoded.get() != nullptr);
if (nullptr == encoded.get()) {
continue;
diff --git a/tests/CodecPriv.h b/tests/CodecPriv.h
index 1123a41dc9..4e42731b01 100644
--- a/tests/CodecPriv.h
+++ b/tests/CodecPriv.h
@@ -10,7 +10,7 @@
#include "SkData.h"
inline bool decode_memory(const void* mem, size_t size, SkBitmap* bm) {
- SkAutoTUnref<SkData> data(SkData::NewWithoutCopy(mem, size));
+ sk_sp<SkData> data(SkData::MakeWithoutCopy(mem, size));
SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(data.get()));
if (!codec) {
diff --git a/tests/CodecTest.cpp b/tests/CodecTest.cpp
index b8b957fe55..7e1b594791 100644
--- a/tests/CodecTest.cpp
+++ b/tests/CodecTest.cpp
@@ -208,8 +208,8 @@ static void check(skiatest::Reporter* r,
bool isIncomplete = supportsIncomplete;
if (isIncomplete) {
size_t size = stream->getLength();
- SkAutoTUnref<SkData> data((SkData::NewFromStream(stream, 2 * size / 3)));
- codec.reset(SkCodec::NewFromData(data));
+ sk_sp<SkData> data((SkData::MakeFromStream(stream, 2 * size / 3)));
+ codec.reset(SkCodec::NewFromData(data.get()));
} else {
codec.reset(SkCodec::NewFromStream(stream.release()));
}
@@ -337,8 +337,8 @@ static void check(skiatest::Reporter* r,
SkAutoTDelete<SkAndroidCodec> androidCodec(nullptr);
if (isIncomplete) {
size_t size = stream->getLength();
- SkAutoTUnref<SkData> data((SkData::NewFromStream(stream, 2 * size / 3)));
- androidCodec.reset(SkAndroidCodec::NewFromData(data));
+ sk_sp<SkData> data((SkData::MakeFromStream(stream, 2 * size / 3)));
+ androidCodec.reset(SkAndroidCodec::NewFromData(data.get()));
} else {
androidCodec.reset(SkAndroidCodec::NewFromStream(stream.release()));
}
@@ -356,8 +356,9 @@ static void check(skiatest::Reporter* r,
if (!isIncomplete) {
// Test SkCodecImageGenerator
SkAutoTDelete<SkStream> stream(resource(path));
- SkAutoTUnref<SkData> fullData(SkData::NewFromStream(stream, stream->getLength()));
- SkAutoTDelete<SkImageGenerator> gen(SkCodecImageGenerator::NewFromEncodedCodec(fullData));
+ sk_sp<SkData> fullData(SkData::MakeFromStream(stream, stream->getLength()));
+ SkAutoTDelete<SkImageGenerator> gen(
+ SkCodecImageGenerator::NewFromEncodedCodec(fullData.get()));
SkBitmap bm;
bm.allocPixels(info);
SkAutoLockPixels autoLockPixels(bm);
@@ -365,8 +366,8 @@ static void check(skiatest::Reporter* r,
compare_to_good_digest(r, codecDigest, bm);
// Test using SkFrontBufferedStream, as Android does
- SkStream* bufferedStream = SkFrontBufferedStream::Create(new SkMemoryStream(fullData),
- SkCodec::MinBufferedBytesNeeded());
+ SkStream* bufferedStream = SkFrontBufferedStream::Create(
+ new SkMemoryStream(std::move(fullData)), SkCodec::MinBufferedBytesNeeded());
REPORTER_ASSERT(r, bufferedStream);
codec.reset(SkCodec::NewFromStream(bufferedStream));
REPORTER_ASSERT(r, codec);
@@ -887,7 +888,7 @@ private:
// Stream that is not an asset stream (!hasPosition() or !hasLength())
class NotAssetMemStream : public SkStream {
public:
- NotAssetMemStream(SkData* data) : fStream(data) {}
+ NotAssetMemStream(sk_sp<SkData> data) : fStream(std::move(data)) {}
bool hasPosition() const override {
return false;
@@ -920,13 +921,13 @@ private:
DEF_TEST(Codec_raw_notseekable, r) {
const char* path = "dng_with_preview.dng";
SkString fullPath(GetResourcePath(path));
- SkAutoTUnref<SkData> data(SkData::NewFromFileName(fullPath.c_str()));
+ sk_sp<SkData> data(SkData::MakeFromFileName(fullPath.c_str()));
if (!data) {
SkDebugf("Missing resource '%s'\n", path);
return;
}
- SkAutoTDelete<SkCodec> codec(SkCodec::NewFromStream(new NotAssetMemStream(data)));
+ SkAutoTDelete<SkCodec> codec(SkCodec::NewFromStream(new NotAssetMemStream(std::move(data))));
REPORTER_ASSERT(r, codec);
test_info(r, codec.get(), codec->getInfo(), SkCodec::kSuccess, nullptr);
diff --git a/tests/DataRefTest.cpp b/tests/DataRefTest.cpp
index 03f66c5b04..59b56fb362 100644
--- a/tests/DataRefTest.cpp
+++ b/tests/DataRefTest.cpp
@@ -149,11 +149,11 @@ static void delete_int_proc(const void* ptr, void* context) {
delete[] data;
}
-static void assert_len(skiatest::Reporter* reporter, SkData* ref, size_t len) {
+static void assert_len(skiatest::Reporter* reporter, const sk_sp<SkData>& ref, size_t len) {
REPORTER_ASSERT(reporter, ref->size() == len);
}
-static void assert_data(skiatest::Reporter* reporter, SkData* ref,
+static void assert_data(skiatest::Reporter* reporter, const sk_sp<SkData>& ref,
const void* data, size_t len) {
REPORTER_ASSERT(reporter, ref->size() == len);
REPORTER_ASSERT(reporter, !memcmp(ref->data(), data, len));
@@ -163,12 +163,12 @@ static void test_cstring(skiatest::Reporter* reporter) {
const char str[] = "Hello world";
size_t len = strlen(str);
- SkAutoTUnref<SkData> r0(SkData::NewWithCopy(str, len + 1));
- SkAutoTUnref<SkData> r1(SkData::NewWithCString(str));
+ sk_sp<SkData> r0(SkData::MakeWithCopy(str, len + 1));
+ sk_sp<SkData> r1(SkData::MakeWithCString(str));
- REPORTER_ASSERT(reporter, r0->equals(r1));
+ REPORTER_ASSERT(reporter, r0->equals(r1.get()));
- SkAutoTUnref<SkData> r2(SkData::NewWithCString(nullptr));
+ sk_sp<SkData> r2(SkData::MakeWithCString(nullptr));
REPORTER_ASSERT(reporter, 1 == r2->size());
REPORTER_ASSERT(reporter, 0 == *r2->bytes());
}
@@ -192,13 +192,13 @@ static void test_files(skiatest::Reporter* reporter) {
}
FILE* file = sk_fopen(path.c_str(), kRead_SkFILE_Flag);
- SkAutoTUnref<SkData> r1(SkData::NewFromFILE(file));
+ sk_sp<SkData> r1(SkData::MakeFromFILE(file));
REPORTER_ASSERT(reporter, r1.get() != nullptr);
REPORTER_ASSERT(reporter, r1->size() == 26);
REPORTER_ASSERT(reporter, strncmp(static_cast<const char*>(r1->data()), s, 26) == 0);
int fd = sk_fileno(file);
- SkAutoTUnref<SkData> r2(SkData::NewFromFD(fd));
+ sk_sp<SkData> r2(SkData::MakeFromFD(fd));
REPORTER_ASSERT(reporter, r2.get() != nullptr);
REPORTER_ASSERT(reporter, r2->size() == 26);
REPORTER_ASSERT(reporter, strncmp(static_cast<const char*>(r2->data()), s, 26) == 0);
@@ -208,11 +208,10 @@ DEF_TEST(Data, reporter) {
const char* str = "We the people, in order to form a more perfect union.";
const int N = 10;
- SkAutoTUnref<SkData> r0(SkData::NewEmpty());
- SkAutoTUnref<SkData> r1(SkData::NewWithCopy(str, strlen(str)));
- SkAutoTUnref<SkData> r2(SkData::NewWithProc(new int[N], N*sizeof(int),
- delete_int_proc, gGlobal));
- SkAutoTUnref<SkData> r3(SkData::NewSubset(r1, 7, 6));
+ sk_sp<SkData> r0(SkData::MakeEmpty());
+ sk_sp<SkData> r1(SkData::MakeWithCopy(str, strlen(str)));
+ sk_sp<SkData> r2(SkData::MakeWithProc(new int[N], N*sizeof(int), delete_int_proc, gGlobal));
+ sk_sp<SkData> r3(SkData::MakeSubset(r1.get(), 7, 6));
assert_len(reporter, r0, 0);
assert_len(reporter, r1, strlen(str));
@@ -222,12 +221,10 @@ DEF_TEST(Data, reporter) {
assert_data(reporter, r1, str, strlen(str));
assert_data(reporter, r3, "people", 6);
- SkData* tmp = SkData::NewSubset(r1, strlen(str), 10);
+ sk_sp<SkData> tmp(SkData::MakeSubset(r1.get(), strlen(str), 10));
assert_len(reporter, tmp, 0);
- tmp->unref();
- tmp = SkData::NewSubset(r1, 0, 0);
+ tmp = SkData::MakeSubset(r1.get(), 0, 0);
assert_len(reporter, tmp, 0);
- tmp->unref();
test_cstring(reporter);
test_files(reporter);
diff --git a/tests/ImageGeneratorTest.cpp b/tests/ImageGeneratorTest.cpp
index 3d750b2c73..63a47e46b1 100644
--- a/tests/ImageGeneratorTest.cpp
+++ b/tests/ImageGeneratorTest.cpp
@@ -19,21 +19,21 @@ static SkImageGenerator* my_factory(SkData*) {
static void test_imagegenerator_factory(skiatest::Reporter* reporter) {
// just need a non-empty data to test things
- SkAutoTUnref<SkData> data(SkData::NewWithCString("test_imagegenerator_factory"));
+ sk_sp<SkData> data(SkData::MakeWithCString("test_imagegenerator_factory"));
gMyFactoryWasCalled = false;
SkImageGenerator* gen;
REPORTER_ASSERT(reporter, !gMyFactoryWasCalled);
- gen = SkImageGenerator::NewFromEncoded(data);
+ gen = SkImageGenerator::NewFromEncoded(data.get());
REPORTER_ASSERT(reporter, nullptr == gen);
REPORTER_ASSERT(reporter, !gMyFactoryWasCalled);
// Test is racy, in that it hopes no other thread is changing this global...
SkGraphics::ImageGeneratorFromEncodedFactory prev =
SkGraphics::SetImageGeneratorFromEncodedFactory(my_factory);
- gen = SkImageGenerator::NewFromEncoded(data);
+ gen = SkImageGenerator::NewFromEncoded(data.get());
REPORTER_ASSERT(reporter, nullptr == gen);
REPORTER_ASSERT(reporter, gMyFactoryWasCalled);
SkGraphics::SetImageGeneratorFromEncodedFactory(prev);
diff --git a/tests/ImageTest.cpp b/tests/ImageTest.cpp
index 72dc9432e3..4f77fbdf1e 100644
--- a/tests/ImageTest.cpp
+++ b/tests/ImageTest.cpp
@@ -73,22 +73,22 @@ static sk_sp<SkImage> create_image() {
draw_image_test_pattern(surface->getCanvas());
return surface->makeImageSnapshot();
}
-static SkData* create_image_data(SkImageInfo* info) {
+static sk_sp<SkData> create_image_data(SkImageInfo* info) {
*info = SkImageInfo::MakeN32(20, 20, kOpaque_SkAlphaType);
const size_t rowBytes = info->minRowBytes();
- SkAutoTUnref<SkData> data(SkData::NewUninitialized(rowBytes * info->height()));
+ sk_sp<SkData> data(SkData::MakeUninitialized(rowBytes * info->height()));
{
SkBitmap bm;
bm.installPixels(*info, data->writable_data(), rowBytes);
SkCanvas canvas(bm);
draw_image_test_pattern(&canvas);
}
- return data.release();
+ return data;
}
static sk_sp<SkImage> create_data_image() {
SkImageInfo info;
sk_sp<SkData> data(create_image_data(&info));
- return SkImage::MakeRasterData(info, data, info.minRowBytes());
+ return SkImage::MakeRasterData(info, std::move(data), info.minRowBytes());
}
#if SK_SUPPORT_GPU // not gpu-specific but currently only used in GPU tests
static sk_sp<SkImage> create_image_565() {
@@ -134,7 +134,7 @@ static sk_sp<SkImage> create_picture_image() {
// Want to ensure that our Release is called when the owning image is destroyed
struct RasterDataHolder {
RasterDataHolder() : fReleaseCount(0) {}
- SkAutoTUnref<SkData> fData;
+ sk_sp<SkData> fData;
int fReleaseCount;
static void Release(const void* pixels, void* context) {
RasterDataHolder* self = static_cast<RasterDataHolder*>(context);
@@ -145,19 +145,17 @@ struct RasterDataHolder {
static sk_sp<SkImage> create_rasterproc_image(RasterDataHolder* dataHolder) {
SkASSERT(dataHolder);
SkImageInfo info;
- SkAutoTUnref<SkData> data(create_image_data(&info));
- dataHolder->fData.reset(SkRef(data.get()));
- return SkImage::MakeFromRaster(SkPixmap(info, data->data(), info.minRowBytes()),
+ dataHolder->fData = create_image_data(&info);
+ return SkImage::MakeFromRaster(SkPixmap(info, dataHolder->fData->data(), info.minRowBytes()),
RasterDataHolder::Release, dataHolder);
}
static sk_sp<SkImage> create_codec_image() {
SkImageInfo info;
- SkAutoTUnref<SkData> data(create_image_data(&info));
+ sk_sp<SkData> data(create_image_data(&info));
SkBitmap bitmap;
bitmap.installPixels(info, data->writable_data(), info.minRowBytes());
- sk_sp<SkData> src(
- SkImageEncoder::EncodeData(bitmap, SkImageEncoder::kPNG_Type, 100));
- return SkImage::MakeFromEncoded(src);
+ sk_sp<SkData> src(SkImageEncoder::EncodeData(bitmap, SkImageEncoder::kPNG_Type, 100));
+ return SkImage::MakeFromEncoded(std::move(src));
}
#if SK_SUPPORT_GPU
static sk_sp<SkImage> create_gpu_image(GrContext* context) {
@@ -231,7 +229,7 @@ const char* kSerializedData = "serialized";
class MockSerializer : public SkPixelSerializer {
public:
- MockSerializer(SkData* (*func)()) : fFunc(func), fDidEncode(false) { }
+ MockSerializer(sk_sp<SkData> (*func)()) : fFunc(func), fDidEncode(false) { }
bool didEncode() const { return fDidEncode; }
@@ -242,11 +240,11 @@ protected:
SkData* onEncode(const SkPixmap&) override {
fDidEncode = true;
- return fFunc();
+ return fFunc().release();
}
private:
- SkData* (*fFunc)();
+ sk_sp<SkData> (*fFunc)();
bool fDidEncode;
typedef SkPixelSerializer INHERITED;
@@ -256,15 +254,17 @@ private:
// Test that SkImage encoding observes custom pixel serializers.
DEF_TEST(Image_Encode_Serializer, reporter) {
- MockSerializer serializer([]() -> SkData* { return SkData::NewWithCString(kSerializedData); });
+ MockSerializer serializer([]() -> sk_sp<SkData> {
+ return SkData::MakeWithCString(kSerializedData);
+ });
sk_sp<SkImage> image(create_image());
- SkAutoTUnref<SkData> encoded(image->encode(&serializer));
- SkAutoTUnref<SkData> reference(SkData::NewWithCString(kSerializedData));
+ sk_sp<SkData> encoded(image->encode(&serializer));
+ sk_sp<SkData> reference(SkData::MakeWithCString(kSerializedData));
REPORTER_ASSERT(reporter, serializer.didEncode());
REPORTER_ASSERT(reporter, encoded);
REPORTER_ASSERT(reporter, encoded->size() > 0);
- REPORTER_ASSERT(reporter, encoded->equals(reference));
+ REPORTER_ASSERT(reporter, encoded->equals(reference.get()));
}
// Test that image encoding failures do not break picture serialization/deserialization.
@@ -281,8 +281,8 @@ DEF_TEST(Image_Serialize_Encoding_Failure, reporter) {
REPORTER_ASSERT(reporter, picture);
REPORTER_ASSERT(reporter, picture->approximateOpCount() > 0);
- MockSerializer emptySerializer([]() -> SkData* { return SkData::NewEmpty(); });
- MockSerializer nullSerializer([]() -> SkData* { return nullptr; });
+ MockSerializer emptySerializer([]() -> sk_sp<SkData> { return SkData::MakeEmpty(); });
+ MockSerializer nullSerializer([]() -> sk_sp<SkData> { return nullptr; });
MockSerializer* serializers[] = { &emptySerializer, &nullSerializer };
for (size_t i = 0; i < SK_ARRAY_COUNT(serializers); ++i) {
diff --git a/tests/MallocPixelRefTest.cpp b/tests/MallocPixelRefTest.cpp
index 2e6c07d103..adc69148b0 100644
--- a/tests/MallocPixelRefTest.cpp
+++ b/tests/MallocPixelRefTest.cpp
@@ -32,18 +32,18 @@ DEF_TEST(MallocPixelRef, reporter) {
{
size_t rowBytes = info.minRowBytes() - 1;
size_t size = info.getSafeSize(rowBytes);
- SkAutoDataUnref data(SkData::NewUninitialized(size));
+ sk_sp<SkData> data(SkData::MakeUninitialized(size));
SkAutoTUnref<SkMallocPixelRef> pr(
- SkMallocPixelRef::NewWithData(info, rowBytes, nullptr, data));
+ SkMallocPixelRef::NewWithData(info, rowBytes, nullptr, data.get()));
// rowbytes too small.
REPORTER_ASSERT(reporter, nullptr == pr.get());
}
{
size_t rowBytes = info.minRowBytes() + 2;
size_t size = info.getSafeSize(rowBytes) - 1;
- SkAutoDataUnref data(SkData::NewUninitialized(size));
+ sk_sp<SkData> data(SkData::MakeUninitialized(size));
SkAutoTUnref<SkMallocPixelRef> pr(
- SkMallocPixelRef::NewWithData(info, rowBytes, nullptr, data));
+ SkMallocPixelRef::NewWithData(info, rowBytes, nullptr, data.get()));
// data too small.
REPORTER_ASSERT(reporter, nullptr == pr.get());
}
@@ -93,7 +93,7 @@ DEF_TEST(MallocPixelRef, reporter) {
REPORTER_ASSERT(reporter, addr == pr->pixels());
}
{
- SkAutoDataUnref data(SkData::NewUninitialized(size));
+ sk_sp<SkData> data(SkData::MakeUninitialized(size));
SkData* dataPtr = data.get();
REPORTER_ASSERT(reporter, dataPtr->unique());
SkAutoTUnref<SkMallocPixelRef> pr(
diff --git a/tests/PDFGlyphsToUnicodeTest.cpp b/tests/PDFGlyphsToUnicodeTest.cpp
index 529c97233c..f0425d94fc 100644
--- a/tests/PDFGlyphsToUnicodeTest.cpp
+++ b/tests/PDFGlyphsToUnicodeTest.cpp
@@ -13,7 +13,7 @@
static bool stream_equals(const SkDynamicMemoryWStream& stream, size_t offset,
const char* buffer, size_t len) {
- SkAutoDataUnref data(stream.copyToData());
+ sk_sp<SkData> data(stream.copyToData());
if (offset + len > data->size()) {
return false;
}
diff --git a/tests/PDFJpegEmbedTest.cpp b/tests/PDFJpegEmbedTest.cpp
index 5ef4a2dbfc..6b10f04932 100644
--- a/tests/PDFJpegEmbedTest.cpp
+++ b/tests/PDFJpegEmbedTest.cpp
@@ -38,10 +38,10 @@ static bool is_subset_of(SkData* smaller, SkData* larger) {
}
-static SkData* load_resource(
+static sk_sp<SkData> load_resource(
skiatest::Reporter* r, const char* test, const char* filename) {
SkString path(GetResourcePath(filename));
- SkData* data = SkData::NewFromFileName(path.c_str());
+ sk_sp<SkData> data(SkData::MakeFromFileName(path.c_str()));
if (!data) {
INFOF(r, "\n%s: Resource '%s' can not be found.\n",
test, filename);
@@ -124,13 +124,12 @@ DEF_TEST(JpegIdentification, r) {
{"mandrill_512_q075.jpg", true, SkJFIFInfo::kYCbCr},
{"randPixels.jpg", true, SkJFIFInfo::kYCbCr}};
for (size_t i = 0; i < SK_ARRAY_COUNT(kTests); ++i) {
- SkAutoTUnref<SkData> data(
- load_resource(r, "JpegIdentification", kTests[i].path));
+ sk_sp<SkData> data(load_resource(r, "JpegIdentification", kTests[i].path));
if (!data) {
continue;
}
SkJFIFInfo info;
- bool isJfif = SkIsJFIF(data, &info);
+ bool isJfif = SkIsJFIF(data.get(), &info);
if (isJfif != kTests[i].isJfif) {
ERRORF(r, "%s failed isJfif test", kTests[i].path);
continue;
diff --git a/tests/PDFPrimitivesTest.cpp b/tests/PDFPrimitivesTest.cpp
index 2ee90b98bd..6d89dd1585 100644
--- a/tests/PDFPrimitivesTest.cpp
+++ b/tests/PDFPrimitivesTest.cpp
@@ -112,7 +112,7 @@ static void TestPDFStream(skiatest::Reporter* reporter) {
compressedByteStream.writeToStream(&expected);
compressedByteStream.reset();
expected.writeText("\nendstream");
- SkAutoDataUnref expectedResultData2(expected.copyToData());
+ sk_sp<SkData> expectedResultData2(expected.copyToData());
SkString result = emit_to_string(*stream);
assert_eql(reporter,
result,
diff --git a/tests/PathTest.cpp b/tests/PathTest.cpp
index cb330c58fe..c76276080c 100644
--- a/tests/PathTest.cpp
+++ b/tests/PathTest.cpp
@@ -4036,7 +4036,7 @@ static void compare_dump(skiatest::Reporter* reporter, const SkPath& path, bool
bool dumpAsHex, const char* str) {
SkDynamicMemoryWStream wStream;
path.dump(&wStream, force, dumpAsHex);
- SkAutoDataUnref data(wStream.copyToData());
+ sk_sp<SkData> data(wStream.copyToData());
REPORTER_ASSERT(reporter, data->size() == strlen(str));
if (strlen(str) > 0) {
REPORTER_ASSERT(reporter, !memcmp(data->data(), str, strlen(str)));
diff --git a/tests/PictureTest.cpp b/tests/PictureTest.cpp
index 8f5ebd3f3b..749bd6e3d4 100644
--- a/tests/PictureTest.cpp
+++ b/tests/PictureTest.cpp
@@ -621,7 +621,7 @@ static void test_bad_bitmap() {
}
#endif
-static SkData* serialized_picture_from_bitmap(const SkBitmap& bitmap) {
+static sk_sp<SkData> serialized_picture_from_bitmap(const SkBitmap& bitmap) {
SkPictureRecorder recorder;
SkCanvas* canvas = recorder.beginRecording(SkIntToScalar(bitmap.width()),
SkIntToScalar(bitmap.height()));
@@ -632,7 +632,7 @@ static SkData* serialized_picture_from_bitmap(const SkBitmap& bitmap) {
SkAutoTUnref<SkPixelSerializer> serializer(
SkImageEncoder::CreatePixelSerializer());
picture->serialize(&wStream, serializer);
- return wStream.copyToData();
+ return sk_sp<SkData>(wStream.copyToData());
}
struct ErrorContext {
@@ -670,18 +670,18 @@ DEF_TEST(Picture_EncodedData, reporter) {
if (!SkImageEncoder::EncodeStream(&wStream, original, SkImageEncoder::kPNG_Type, 100)) {
return;
}
- SkAutoDataUnref data(wStream.copyToData());
+ sk_sp<SkData> data(wStream.copyToData());
SkBitmap bm;
- bool installSuccess = SkDEPRECATED_InstallDiscardablePixelRef(data, &bm);
+ bool installSuccess = SkDEPRECATED_InstallDiscardablePixelRef(data.get(), &bm);
REPORTER_ASSERT(reporter, installSuccess);
// Write both bitmaps to pictures, and ensure that the resulting data streams are the same.
// Flattening original will follow the old path of performing an encode, while flattening bm
// will use the already encoded data.
- SkAutoDataUnref picture1(serialized_picture_from_bitmap(original));
- SkAutoDataUnref picture2(serialized_picture_from_bitmap(bm));
- REPORTER_ASSERT(reporter, picture1->equals(picture2));
+ sk_sp<SkData> picture1(serialized_picture_from_bitmap(original));
+ sk_sp<SkData> picture2(serialized_picture_from_bitmap(bm));
+ REPORTER_ASSERT(reporter, picture1->equals(picture2.get()));
// Now test that a parse error was generated when trying to create a new SkPicture without
// providing a function to decode the bitmap.
@@ -689,7 +689,7 @@ DEF_TEST(Picture_EncodedData, reporter) {
context.fErrors = 0;
context.fReporter = reporter;
SkSetErrorCallback(assert_one_parse_error_cb, &context);
- SkMemoryStream pictureStream(picture1);
+ SkMemoryStream pictureStream(std::move(picture1));
SkClearLastError();
sk_sp<SkPicture> pictureFromStream(SkPicture::MakeFromStream(&pictureStream, nullptr));
REPORTER_ASSERT(reporter, pictureFromStream.get() != nullptr);
diff --git a/tests/ResourceCacheTest.cpp b/tests/ResourceCacheTest.cpp
index bd2bb2f094..289fdd9eb8 100644
--- a/tests/ResourceCacheTest.cpp
+++ b/tests/ResourceCacheTest.cpp
@@ -871,8 +871,7 @@ static void test_duplicate_unique_key(skiatest::Reporter* reporter) {
make_unique_key<0>(&key2, 0);
SkAutoTUnref<TestResource> d(new TestResource(context->getGpu()));
int foo = 4132;
- SkAutoTUnref<SkData> data(SkData::NewWithCopy(&foo, sizeof(foo)));
- key2.setCustomData(data.get());
+ key2.setCustomData(SkData::MakeWithCopy(&foo, sizeof(foo)));
d->resourcePriv().setUniqueKey(key2);
}
@@ -1262,8 +1261,7 @@ static void test_custom_data(skiatest::Reporter* reporter) {
make_unique_key<0>(&key1, 1);
make_unique_key<0>(&key2, 2);
int foo = 4132;
- SkAutoTUnref<SkData> data(SkData::NewWithCopy(&foo, sizeof(foo)));
- key1.setCustomData(data.get());
+ key1.setCustomData(SkData::MakeWithCopy(&foo, sizeof(foo)));
REPORTER_ASSERT(reporter, *(int*) key1.getCustomData()->data() == 4132);
REPORTER_ASSERT(reporter, key2.getCustomData() == nullptr);
@@ -1283,7 +1281,7 @@ static void test_abandoned(skiatest::Reporter* reporter) {
// Call all the public methods on resource in the abandoned state. They shouldn't crash.
int foo = 4132;
- SkAutoTUnref<SkData> data(SkData::NewWithCopy(&foo, sizeof(foo)));
+ sk_sp<SkData> data(SkData::MakeWithCopy(&foo, sizeof(foo)));
resource->setCustomData(data.get());
resource->getCustomData();
resource->getUniqueID();
diff --git a/tests/SerializationTest.cpp b/tests/SerializationTest.cpp
index a6be1889a5..0e53ac6009 100644
--- a/tests/SerializationTest.cpp
+++ b/tests/SerializationTest.cpp
@@ -634,7 +634,7 @@ static sk_sp<SkPicture> copy_picture_via_serialization(SkPicture* src) {
struct AnnotationRec {
const SkRect fRect;
const char* fKey;
- SkData* fValue;
+ sk_sp<SkData> fValue;
};
class TestAnnotationCanvas : public SkCanvas {
@@ -661,7 +661,7 @@ protected:
REPORTER_ASSERT(fReporter, fCurrIndex < fCount);
REPORTER_ASSERT(fReporter, rect == fRec[fCurrIndex].fRect);
REPORTER_ASSERT(fReporter, !strcmp(key, fRec[fCurrIndex].fKey));
- REPORTER_ASSERT(fReporter, value->equals(fRec[fCurrIndex].fValue));
+ REPORTER_ASSERT(fReporter, value->equals(fRec[fCurrIndex].fValue.get()));
fCurrIndex += 1;
}
};
@@ -676,23 +676,23 @@ DEF_TEST(Annotations, reporter) {
const char* str0 = "rect-with-url";
const SkRect r0 = SkRect::MakeWH(10, 10);
- SkAutoTUnref<SkData> d0(SkData::NewWithCString(str0));
- SkAnnotateRectWithURL(recordingCanvas, r0, d0);
+ sk_sp<SkData> d0(SkData::MakeWithCString(str0));
+ SkAnnotateRectWithURL(recordingCanvas, r0, d0.get());
const char* str1 = "named-destination";
const SkRect r1 = SkRect::MakeXYWH(5, 5, 0, 0); // collapsed to a point
- SkAutoTUnref<SkData> d1(SkData::NewWithCString(str1));
- SkAnnotateNamedDestination(recordingCanvas, {r1.x(), r1.y()}, d1);
+ sk_sp<SkData> d1(SkData::MakeWithCString(str1));
+ SkAnnotateNamedDestination(recordingCanvas, {r1.x(), r1.y()}, d1.get());
const char* str2 = "link-to-destination";
const SkRect r2 = SkRect::MakeXYWH(20, 20, 5, 6);
- SkAutoTUnref<SkData> d2(SkData::NewWithCString(str2));
- SkAnnotateLinkToDestination(recordingCanvas, r2, d2);
+ sk_sp<SkData> d2(SkData::MakeWithCString(str2));
+ SkAnnotateLinkToDestination(recordingCanvas, r2, d2.get());
const AnnotationRec recs[] = {
- { r0, SkAnnotationKeys::URL_Key(), d0 },
- { r1, SkAnnotationKeys::Define_Named_Dest_Key(), d1 },
- { r2, SkAnnotationKeys::Link_Named_Dest_Key(), d2 },
+ { r0, SkAnnotationKeys::URL_Key(), std::move(d0) },
+ { r1, SkAnnotationKeys::Define_Named_Dest_Key(), std::move(d1) },
+ { r2, SkAnnotationKeys::Link_Named_Dest_Key(), std::move(d2) },
};
sk_sp<SkPicture> pict0(recorder.finishRecordingAsPicture());
diff --git a/tests/StreamTest.cpp b/tests/StreamTest.cpp
index fe4da0f5fb..50523ff317 100644
--- a/tests/StreamTest.cpp
+++ b/tests/StreamTest.cpp
@@ -174,7 +174,7 @@ static void TestPackedUInt(skiatest::Reporter* reporter) {
static void TestDereferencingData(SkMemoryStream* memStream) {
memStream->read(nullptr, 0);
memStream->getMemoryBase();
- SkAutoDataUnref data(memStream->copyToData());
+ sk_sp<SkData> data(memStream->copyToData());
}
static void TestNullData() {
@@ -361,7 +361,7 @@ DEF_TEST(StreamPeek_BlockMemoryStream, rep) {
dynamicMemoryWStream.write(buffer, size);
}
SkAutoTDelete<SkStreamAsset> asset(dynamicMemoryWStream.detachAsStream());
- SkAutoTUnref<SkData> expected(SkData::NewUninitialized(asset->getLength()));
+ sk_sp<SkData> expected(SkData::MakeUninitialized(asset->getLength()));
uint8_t* expectedPtr = static_cast<uint8_t*>(expected->writable_data());
valueSource.setSeed(kSeed); // reseed.
// We want the exact same same "random" string of numbers to put
@@ -370,7 +370,7 @@ DEF_TEST(StreamPeek_BlockMemoryStream, rep) {
for (size_t i = 0; i < asset->getLength(); ++i) {
expectedPtr[i] = valueSource.nextU() & 0xFF;
}
- stream_peek_test(rep, asset, expected);
+ stream_peek_test(rep, asset, expected.get());
}
namespace {
diff --git a/tests/TextureCompressionTest.cpp b/tests/TextureCompressionTest.cpp
index e1992a0359..06be9cefec 100644
--- a/tests/TextureCompressionTest.cpp
+++ b/tests/TextureCompressionTest.cpp
@@ -64,7 +64,7 @@ DEF_TEST(CompressAlphaFailDimensions, reporter) {
if (!compresses_a8(fmt)) {
continue;
}
- SkAutoDataUnref data(SkTextureCompressor::CompressBitmapToFormat(pixmap, fmt));
+ sk_sp<SkData> data(SkTextureCompressor::CompressBitmapToFormat(pixmap, fmt));
REPORTER_ASSERT(reporter, nullptr == data);
}
}
@@ -93,7 +93,7 @@ DEF_TEST(CompressAlphaFailColorType, reporter) {
if (!compresses_a8(fmt)) {
continue;
}
- SkAutoDataUnref data(SkTextureCompressor::CompressBitmapToFormat(pixmap, fmt));
+ sk_sp<SkData> data(SkTextureCompressor::CompressBitmapToFormat(pixmap, fmt));
REPORTER_ASSERT(reporter, nullptr == data);
}
}
@@ -154,7 +154,7 @@ DEF_TEST(CompressCheckerboard, reporter) {
continue;
}
- SkAutoDataUnref data(SkTextureCompressor::CompressBitmapToFormat(pixmap, fmt));
+ sk_sp<SkData> data(SkTextureCompressor::CompressBitmapToFormat(pixmap, fmt));
REPORTER_ASSERT(reporter, data);
if (nullptr == data) {
continue;
@@ -212,7 +212,7 @@ DEF_TEST(CompressLATC, reporter) {
pixels[i] = lum;
}
- SkAutoDataUnref latcData(
+ sk_sp<SkData> latcData(
SkTextureCompressor::CompressBitmapToFormat(pixmap, kLATCFormat));
REPORTER_ASSERT(reporter, latcData);
if (nullptr == latcData) {
diff --git a/tests/Writer32Test.cpp b/tests/Writer32Test.cpp
index ac932e1d29..3eab94cd2d 100644
--- a/tests/Writer32Test.cpp
+++ b/tests/Writer32Test.cpp
@@ -267,13 +267,13 @@ DEF_TEST(Writer32_misc, reporter) {
DEF_TEST(Writer32_data, reporter) {
const char* str = "0123456789";
- SkAutoTUnref<SkData> data0(SkData::NewWithCString(str));
- SkAutoTUnref<SkData> data1(SkData::NewEmpty());
+ sk_sp<SkData> data0(SkData::MakeWithCString(str));
+ sk_sp<SkData> data1(SkData::MakeEmpty());
const size_t sizes[] = {
SkWriter32::WriteDataSize(nullptr),
- SkWriter32::WriteDataSize(data0),
- SkWriter32::WriteDataSize(data1),
+ SkWriter32::WriteDataSize(data0.get()),
+ SkWriter32::WriteDataSize(data1.get()),
};
SkSWriter32<1000> writer;
@@ -283,11 +283,11 @@ DEF_TEST(Writer32_data, reporter) {
sizeWritten += sizes[0];
REPORTER_ASSERT(reporter, sizeWritten == writer.bytesWritten());
- writer.writeData(data0);
+ writer.writeData(data0.get());
sizeWritten += sizes[1];
REPORTER_ASSERT(reporter, sizeWritten == writer.bytesWritten());
- writer.writeData(data1);
+ writer.writeData(data1.get());
sizeWritten += sizes[2];
REPORTER_ASSERT(reporter, sizeWritten == writer.bytesWritten());
diff --git a/tools/Resources.cpp b/tools/Resources.cpp
index 6d3054ab33..899f5d2bc4 100644
--- a/tools/Resources.cpp
+++ b/tools/Resources.cpp
@@ -27,14 +27,14 @@ void SetResourcePath(const char* resource) {
bool GetResourceAsBitmap(const char* resource, SkBitmap* dst) {
SkString resourcePath = GetResourcePath(resource);
- SkAutoTUnref<SkData> resourceData(SkData::NewFromFileName(resourcePath.c_str()));
- SkAutoTDelete<SkImageGenerator> gen(SkImageGenerator::NewFromEncoded(resourceData));
+ sk_sp<SkData> resourceData(SkData::MakeFromFileName(resourcePath.c_str()));
+ SkAutoTDelete<SkImageGenerator> gen(SkImageGenerator::NewFromEncoded(resourceData.get()));
return gen && gen->tryGenerateBitmap(dst);
}
sk_sp<SkImage> GetResourceAsImage(const char* resource) {
SkString path = GetResourcePath(resource);
- sk_sp<SkData> resourceData(SkData::NewFromFileName(path.c_str()));
+ sk_sp<SkData> resourceData(SkData::MakeFromFileName(path.c_str()));
return SkImage::MakeFromEncoded(resourceData);
}
diff --git a/tools/debugger/SkDrawCommand.cpp b/tools/debugger/SkDrawCommand.cpp
index 51eb96706a..362325085c 100644
--- a/tools/debugger/SkDrawCommand.cpp
+++ b/tools/debugger/SkDrawCommand.cpp
@@ -609,8 +609,8 @@ static void store_bool(Json::Value* target, const char* key, bool value, bool de
static void encode_data(const void* bytes, size_t count, const char* contentType,
UrlDataManager& urlDataManager, Json::Value* target) {
- SkAutoTUnref<SkData> data(SkData::NewWithCopy(bytes, count));
- SkString url = urlDataManager.addData(data, contentType);
+ sk_sp<SkData> data(SkData::MakeWithCopy(bytes, count));
+ SkString url = urlDataManager.addData(data.get(), contentType);
*target = Json::Value(url.c_str());
}
@@ -821,7 +821,7 @@ static SkBitmap* load_bitmap(const Json::Value& jsonBitmap, UrlDataManager& urlD
}
const void* data;
int size = decode_data(jsonBitmap[SKDEBUGCANVAS_ATTRIBUTE_DATA], urlDataManager, &data);
- sk_sp<SkData> encoded(SkData::NewWithoutCopy(data, size));
+ sk_sp<SkData> encoded(SkData::MakeWithoutCopy(data, size));
sk_sp<SkImage> image(SkImage::MakeFromEncoded(std::move(encoded), nullptr));
SkAutoTDelete<SkBitmap> bitmap(new SkBitmap());
diff --git a/tools/fiddle/fiddle_main.cpp b/tools/fiddle/fiddle_main.cpp
index df2e8ff66e..49ce50b459 100644
--- a/tools/fiddle/fiddle_main.cpp
+++ b/tools/fiddle/fiddle_main.cpp
@@ -93,7 +93,7 @@ static SkData* encode_snapshot(const sk_sp<SkSurface>& surface) {
int main() {
const DrawOptions options = GetDrawOptions();
if (options.source) {
- sk_sp<SkData> data(SkData::NewFromFileName(options.source));
+ sk_sp<SkData> data(SkData::MakeFromFileName(options.source));
if (!data) {
perror(options.source);
return 1;
diff --git a/tools/get_images_from_skps.cpp b/tools/get_images_from_skps.cpp
index 11b99c214d..f9ba34b0f2 100644
--- a/tools/get_images_from_skps.cpp
+++ b/tools/get_images_from_skps.cpp
@@ -53,8 +53,8 @@ struct Sniffer : public SkPixelSerializer {
}
gSeen.add(digest);
- SkAutoTUnref<SkData> data(SkData::NewWithoutCopy(ptr, len));
- SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(data));
+ sk_sp<SkData> data(SkData::MakeWithoutCopy(ptr, len));
+ SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(data.get()));
if (!codec) {
// FIXME: This code is currently unreachable because we create an empty generator when
// we fail to create a codec.
diff --git a/tools/lua/lua_app.cpp b/tools/lua/lua_app.cpp
index 6aea8ee437..92623d0a20 100644
--- a/tools/lua/lua_app.cpp
+++ b/tools/lua/lua_app.cpp
@@ -19,10 +19,10 @@ extern "C" {
#include "lauxlib.h"
}
-static SkData* read_into_data(const char file[]) {
- SkData* data = SkData::NewFromFileName(file);
+static sk_sp<SkData> read_into_data(const char file[]) {
+ sk_sp<SkData> data(SkData::MakeFromFileName(file));
if (!data) {
- data = SkData::NewEmpty();
+ data = SkData::MakeEmpty();
}
return data;
}
@@ -33,7 +33,7 @@ int tool_main(int argc, char** argv) {
SkLua L;
for (int i = 1; i < argc; ++i) {
- SkData* data = nullptr;
+ sk_sp<SkData> data;
const void* ptr;
size_t len;
@@ -50,7 +50,6 @@ int tool_main(int argc, char** argv) {
SkDebugf("failed to load %s\n", argv[i]);
exit(-1);
}
- SkSafeUnref(data);
}
return 0;
}
diff --git a/tools/lua/lua_pictures.cpp b/tools/lua/lua_pictures.cpp
index 9776002e7a..eee7088f0d 100644
--- a/tools/lua/lua_pictures.cpp
+++ b/tools/lua/lua_pictures.cpp
@@ -85,9 +85,9 @@ int tool_main(int argc, char** argv) {
SkLua L(summary);
for (int i = 0; i < FLAGS_luaFile.count(); ++i) {
- SkAutoDataUnref data(SkData::NewFromFileName(FLAGS_luaFile[i]));
- if (nullptr == data.get()) {
- data.reset(SkData::NewEmpty());
+ sk_sp<SkData> data(SkData::MakeFromFileName(FLAGS_luaFile[i]));
+ if (!data) {
+ data = SkData::MakeEmpty();
}
if (!FLAGS_quiet) {
SkDebugf("loading %s...\n", FLAGS_luaFile[i]);
diff --git a/tools/skdiff_main.cpp b/tools/skdiff_main.cpp
index bb611e96fc..0c60677c58 100644
--- a/tools/skdiff_main.cpp
+++ b/tools/skdiff_main.cpp
@@ -343,12 +343,12 @@ private:
static void get_bounds(DiffResource& resource, const char* name) {
if (resource.fBitmap.empty() && !DiffResource::isStatusFailed(resource.fStatus)) {
- SkAutoDataUnref fileBits(read_file(resource.fFullPath.c_str()));
- if (nullptr == fileBits) {
+ sk_sp<SkData> fileBits(read_file(resource.fFullPath.c_str()));
+ if (fileBits) {
+ get_bitmap(fileBits.get(), resource, true);
+ } else {
SkDebugf("WARNING: couldn't read %s file <%s>\n", name, resource.fFullPath.c_str());
resource.fStatus = DiffResource::kCouldNotRead_Status;
- } else {
- get_bitmap(fileBits, resource, true);
}
}
}
@@ -472,11 +472,11 @@ static void create_diff_images (DiffMetricProc dmp,
drp->fComparison.fFullPath = comparisonPath;
drp->fComparison.fStatus = DiffResource::kExists_Status;
- SkAutoDataUnref baseFileBits(read_file(drp->fBase.fFullPath.c_str()));
+ sk_sp<SkData> baseFileBits(read_file(drp->fBase.fFullPath.c_str()));
if (baseFileBits) {
drp->fBase.fStatus = DiffResource::kRead_Status;
}
- SkAutoDataUnref comparisonFileBits(read_file(drp->fComparison.fFullPath.c_str()));
+ sk_sp<SkData> comparisonFileBits(read_file(drp->fComparison.fFullPath.c_str()));
if (comparisonFileBits) {
drp->fComparison.fStatus = DiffResource::kRead_Status;
}
@@ -491,13 +491,13 @@ static void create_diff_images (DiffMetricProc dmp,
}
drp->fResult = DiffRecord::kCouldNotCompare_Result;
- } else if (are_buffers_equal(baseFileBits, comparisonFileBits)) {
+ } else if (are_buffers_equal(baseFileBits.get(), comparisonFileBits.get())) {
drp->fResult = DiffRecord::kEqualBits_Result;
VERBOSE_STATUS("MATCH", ANSI_COLOR_GREEN, baseFiles[i]);
} else {
AutoReleasePixels arp(drp);
- get_bitmap(baseFileBits, drp->fBase, false);
- get_bitmap(comparisonFileBits, drp->fComparison, false);
+ get_bitmap(baseFileBits.get(), drp->fBase, false);
+ get_bitmap(comparisonFileBits.get(), drp->fComparison, false);
VERBOSE_STATUS("DIFFERENT", ANSI_COLOR_RED, baseFiles[i]);
if (DiffResource::kDecoded_Status == drp->fBase.fStatus &&
DiffResource::kDecoded_Status == drp->fComparison.fStatus) {
diff --git a/tools/skdiff_utils.cpp b/tools/skdiff_utils.cpp
index 3d4bf7ea93..3a37733682 100644
--- a/tools/skdiff_utils.cpp
+++ b/tools/skdiff_utils.cpp
@@ -25,8 +25,8 @@ bool are_buffers_equal(SkData* skdata1, SkData* skdata2) {
return (0 == memcmp(skdata1->data(), skdata2->data(), skdata1->size()));
}
-SkData* read_file(const char* file_path) {
- SkData* data = SkData::NewFromFileName(file_path);
+sk_sp<SkData> read_file(const char* file_path) {
+ sk_sp<SkData> data(SkData::MakeFromFileName(file_path));
if (!data) {
SkDebugf("WARNING: could not open file <%s> for reading\n", file_path);
}
diff --git a/tools/skdiff_utils.h b/tools/skdiff_utils.h
index ae7d51a1d2..c535ae26b5 100644
--- a/tools/skdiff_utils.h
+++ b/tools/skdiff_utils.h
@@ -22,7 +22,7 @@ bool are_buffers_equal(SkData* skdata1, SkData* skdata2);
/** Reads the file at the given path and returns its complete contents as an
* SkData object (or returns nullptr on error).
*/
-SkData* read_file(const char* file_path);
+sk_sp<SkData> read_file(const char* file_path);
/** Decodes the fileBits into the resource.fBitmap. Returns false on failure. */
bool get_bitmap(SkData* fileBits, DiffResource& resource, bool sizeOnly);
diff --git a/tools/skhello.cpp b/tools/skhello.cpp
index f7d5b9a00e..d1fb96e0eb 100644
--- a/tools/skhello.cpp
+++ b/tools/skhello.cpp
@@ -38,8 +38,8 @@ static bool do_surface(int w, int h, const char path[], const char text[],
doDraw(surface->getCanvas(), paint, text);
sk_sp<SkImage> image(surface->makeImageSnapshot());
- SkAutoDataUnref data(image->encode());
- if (nullptr == data.get()) {
+ sk_sp<SkData> data(image->encode());
+ if (!data) {
return false;
}
SkFILEWStream stream(path);
diff --git a/tools/skiaserve/Request.cpp b/tools/skiaserve/Request.cpp
index edc0a6820b..e3a0caa6e2 100644
--- a/tools/skiaserve/Request.cpp
+++ b/tools/skiaserve/Request.cpp
@@ -52,7 +52,7 @@ SkBitmap* Request::getBitmapFromCanvas(SkCanvas* canvas) {
return bmp;
}
-SkData* Request::writeCanvasToPng(SkCanvas* canvas) {
+sk_sp<SkData> Request::writeCanvasToPng(SkCanvas* canvas) {
// capture pixels
SkAutoTDelete<SkBitmap> bmp(this->getBitmapFromCanvas(canvas));
SkASSERT(bmp);
@@ -65,7 +65,7 @@ SkData* Request::writeCanvasToPng(SkCanvas* canvas) {
SkDynamicMemoryWStream buffer;
SkDrawCommand::WritePNG((const png_bytep) encodedBitmap->bytes(), bmp->width(), bmp->height(),
buffer, true);
- return buffer.copyToData();
+ return sk_sp<SkData>(buffer.copyToData());
}
SkCanvas* Request::getCanvas() {
@@ -96,12 +96,12 @@ void Request::drawToCanvas(int n, int m) {
fDebugCanvas->drawTo(target, n, m);
}
-SkData* Request::drawToPng(int n, int m) {
+sk_sp<SkData> Request::drawToPng(int n, int m) {
this->drawToCanvas(n, m);
return writeCanvasToPng(this->getCanvas());
}
-SkData* Request::writeOutSkp() {
+sk_sp<SkData> Request::writeOutSkp() {
// Playback into picture recorder
SkIRect bounds = this->getBounds();
SkPictureRecorder recorder;
@@ -117,7 +117,7 @@ SkData* Request::writeOutSkp() {
SkAutoTUnref<SkPixelSerializer> serializer(SkImageEncoder::CreatePixelSerializer());
picture->serialize(&outStream, serializer);
- return outStream.copyToData();
+ return sk_sp<SkData>(outStream.copyToData());
}
GrContext* Request::getContext() {
@@ -242,7 +242,7 @@ bool Request::initPictureFromStream(SkStream* stream) {
return true;
}
-SkData* Request::getJsonOps(int n) {
+sk_sp<SkData> Request::getJsonOps(int n) {
SkCanvas* canvas = this->getCanvas();
Json::Value root = fDebugCanvas->toJSON(fUrlDataManager, n, canvas);
root["mode"] = Json::Value(fGPUEnabled ? "gpu" : "cpu");
@@ -251,10 +251,10 @@ SkData* Request::getJsonOps(int n) {
SkDynamicMemoryWStream stream;
stream.writeText(Json::FastWriter().write(root).c_str());
- return stream.copyToData();
+ return sk_sp<SkData>(stream.copyToData());
}
-SkData* Request::getJsonBatchList(int n) {
+sk_sp<SkData> Request::getJsonBatchList(int n) {
SkCanvas* canvas = this->getCanvas();
SkASSERT(fGPUEnabled);
@@ -263,10 +263,10 @@ SkData* Request::getJsonBatchList(int n) {
SkDynamicMemoryWStream stream;
stream.writeText(Json::FastWriter().write(result).c_str());
- return stream.copyToData();
+ return sk_sp<SkData>(stream.copyToData());
}
-SkData* Request::getJsonInfo(int n) {
+sk_sp<SkData> Request::getJsonInfo(int n) {
// drawTo
SkAutoTUnref<SkSurface> surface(this->createCPUSurface());
SkCanvas* canvas = surface->getCanvas();
@@ -284,7 +284,7 @@ SkData* Request::getJsonInfo(int n) {
std::string json = Json::FastWriter().write(info);
// We don't want the null terminator so strlen is correct
- return SkData::NewWithCopy(json.c_str(), strlen(json.c_str()));
+ return SkData::MakeWithCopy(json.c_str(), strlen(json.c_str()));
}
SkColor Request::getPixel(int x, int y) {
diff --git a/tools/skiaserve/Request.h b/tools/skiaserve/Request.h
index f3af6b72ee..7a5daf55d1 100644
--- a/tools/skiaserve/Request.h
+++ b/tools/skiaserve/Request.h
@@ -36,8 +36,8 @@ struct Request {
~Request();
// draws to skia draw op N, highlighting the Mth batch(-1 means no highlight)
- SkData* drawToPng(int n, int m = -1);
- SkData* writeOutSkp();
+ sk_sp<SkData> drawToPng(int n, int m = -1);
+ sk_sp<SkData> writeOutSkp();
SkCanvas* getCanvas();
SkBitmap* getBitmapFromCanvas(SkCanvas* canvas);
bool enableGPU(bool enable);
@@ -48,13 +48,13 @@ struct Request {
bool initPictureFromStream(SkStream*);
// Returns the json list of ops as an SkData
- SkData* getJsonOps(int n);
+ sk_sp<SkData> getJsonOps(int n);
// Returns a json list of batches as an SkData
- SkData* getJsonBatchList(int n);
+ sk_sp<SkData> getJsonBatchList(int n);
// Returns json with the viewMatrix and clipRect
- SkData* getJsonInfo(int n);
+ sk_sp<SkData> getJsonInfo(int n);
// returns the color of the pixel at (x,y) in the canvas
SkColor getPixel(int x, int y);
@@ -64,7 +64,7 @@ struct Request {
UrlDataManager fUrlDataManager;
private:
- SkData* writeCanvasToPng(SkCanvas* canvas);
+ sk_sp<SkData> writeCanvasToPng(SkCanvas* canvas);
void drawToCanvas(int n, int m = -1);
SkSurface* createCPUSurface();
SkSurface* createGPUSurface();
diff --git a/tools/skiaserve/urlhandlers/BatchesHandler.cpp b/tools/skiaserve/urlhandlers/BatchesHandler.cpp
index b245c4d8f3..81457acca4 100644
--- a/tools/skiaserve/urlhandlers/BatchesHandler.cpp
+++ b/tools/skiaserve/urlhandlers/BatchesHandler.cpp
@@ -32,8 +32,8 @@ int BatchesHandler::handle(Request* request, MHD_Connection* connection,
if (0 == strcmp(method, MHD_HTTP_METHOD_GET)) {
int n = request->getLastOp();
- SkAutoTUnref<SkData> data(request->getJsonBatchList(n));
- return SendData(connection, data, "application/json");
+ sk_sp<SkData> data(request->getJsonBatchList(n));
+ return SendData(connection, data.get(), "application/json");
}
return MHD_NO;
diff --git a/tools/skiaserve/urlhandlers/CmdHandler.cpp b/tools/skiaserve/urlhandlers/CmdHandler.cpp
index 22877e7810..c8ec82d22b 100644
--- a/tools/skiaserve/urlhandlers/CmdHandler.cpp
+++ b/tools/skiaserve/urlhandlers/CmdHandler.cpp
@@ -37,8 +37,8 @@ int CmdHandler::handle(Request* request, MHD_Connection* connection,
sscanf(commands[1].c_str(), "%d", &n);
}
- SkAutoTUnref<SkData> data(request->getJsonOps(n));
- return SendData(connection, data, "application/json");
+ sk_sp<SkData> data(request->getJsonOps(n));
+ return SendData(connection, data.get(), "application/json");
}
// /cmd/N, for now only delete supported
diff --git a/tools/skiaserve/urlhandlers/DownloadHandler.cpp b/tools/skiaserve/urlhandlers/DownloadHandler.cpp
index 4e2391588b..17bf867485 100644
--- a/tools/skiaserve/urlhandlers/DownloadHandler.cpp
+++ b/tools/skiaserve/urlhandlers/DownloadHandler.cpp
@@ -25,9 +25,9 @@ int DownloadHandler::handle(Request* request, MHD_Connection* connection,
return MHD_NO;
}
- SkAutoTUnref<SkData> data(request->writeOutSkp());
+ sk_sp<SkData> data(request->writeOutSkp());
// TODO fancier name handling
- return SendData(connection, data, "application/octet-stream", true,
+ return SendData(connection, data.get(), "application/octet-stream", true,
"attachment; filename=something.skp;");
}
diff --git a/tools/skiaserve/urlhandlers/ImgHandler.cpp b/tools/skiaserve/urlhandlers/ImgHandler.cpp
index 91ea6d06de..659c215197 100644
--- a/tools/skiaserve/urlhandlers/ImgHandler.cpp
+++ b/tools/skiaserve/urlhandlers/ImgHandler.cpp
@@ -40,6 +40,6 @@ int ImgHandler::handle(Request* request, MHD_Connection* connection,
sscanf(commands[2].c_str(), "%d", &m);
}
- SkAutoTUnref<SkData> data(request->drawToPng(n, m));
- return SendData(connection, data, "image/png");
+ sk_sp<SkData> data(request->drawToPng(n, m));
+ return SendData(connection, data.get(), "image/png");
}
diff --git a/tools/skiaserve/urlhandlers/InfoHandler.cpp b/tools/skiaserve/urlhandlers/InfoHandler.cpp
index 464bbb35e1..9335458f5f 100644
--- a/tools/skiaserve/urlhandlers/InfoHandler.cpp
+++ b/tools/skiaserve/urlhandlers/InfoHandler.cpp
@@ -37,6 +37,6 @@ int InfoHandler::handle(Request* request, MHD_Connection* connection,
sscanf(commands[1].c_str(), "%d", &n);
}
- SkAutoTUnref<SkData> data(request->getJsonInfo(n));
- return SendData(connection, data, "application/json");
+ sk_sp<SkData> data(request->getJsonInfo(n));
+ return SendData(connection, data.get(), "application/json");
}
diff --git a/tools/visualize_color_gamut.cpp b/tools/visualize_color_gamut.cpp
index 4d340f8d98..424106f9c4 100644
--- a/tools/visualize_color_gamut.cpp
+++ b/tools/visualize_color_gamut.cpp
@@ -119,12 +119,12 @@ int main(int argc, char** argv) {
return -1;
}
- SkAutoTUnref<SkData> data(SkData::NewFromFileName(input));
+ sk_sp<SkData> data(SkData::MakeFromFileName(input));
if (!data) {
SkDebugf("Cannot find input image.\n");
return -1;
}
- SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(data));
+ SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(data.get()));
if (!codec) {
SkDebugf("Invalid input image.\n");
return -1;