aboutsummaryrefslogtreecommitdiffhomepage
path: root/dm/DMSrcSink.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'dm/DMSrcSink.cpp')
-rw-r--r--dm/DMSrcSink.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/dm/DMSrcSink.cpp b/dm/DMSrcSink.cpp
index bab344b1e5..e6db22bcdb 100644
--- a/dm/DMSrcSink.cpp
+++ b/dm/DMSrcSink.cpp
@@ -32,6 +32,7 @@
#include "SkImageInfoPriv.h"
#include "SkLiteDL.h"
#include "SkLiteRecorder.h"
+#include "SkMakeUnique.h"
#include "SkMallocPixelRef.h"
#include "SkMultiPictureDocumentPriv.h"
#include "SkMultiPictureDraw.h"
@@ -1800,9 +1801,9 @@ ThreadedSink::ThreadedSink(SkColorType colorType, sk_sp<SkColorSpace> colorSpace
Error ThreadedSink::draw(const Src& src, SkBitmap* dst, SkWStream* stream, SkString* str) const {
this->allocPixels(src, dst);
- std::unique_ptr<SkThreadedBMPDevice> device(new SkThreadedBMPDevice(
- *dst, FLAGS_backendTiles, FLAGS_backendThreads, fExecutor.get()));
- std::unique_ptr<SkCanvas> canvas(new SkCanvas(device.get()));
+ auto canvas = skstd::make_unique<SkCanvas>(
+ sk_make_sp<SkThreadedBMPDevice>(
+ *dst, FLAGS_backendTiles, FLAGS_backendThreads, fExecutor.get()));
Error result = src.draw(canvas.get());
canvas->flush();
return result;