Index: src/core/SkCanvas.cpp |
diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp |
index 2f6477c41dec49be7cdc59cb3014364efff34a5a..ff74dddab52634f4c22edbcdfd64d8e689fad6b6 100644 |
--- a/src/core/SkCanvas.cpp |
+++ b/src/core/SkCanvas.cpp |
@@ -1334,6 +1334,15 @@ SkImageInfo SkCanvas::imageInfo() const { |
} |
} |
+const SkSurfaceProps* SkCanvas::props() const { |
robertphillips
2016/04/05 12:54:34
Is this b.c. of the PDFCanvas? If so, what does PD
|
+ SkBaseDevice* dev = this->getDevice(); |
+ if (dev) { |
+ return &fProps; |
+ } else { |
+ return nullptr; |
+ } |
+} |
+ |
#ifdef SK_SUPPORT_LEGACY_PEEKPIXELS_PARMS |
const void* SkCanvas::peekPixels(SkImageInfo* info, size_t* rowBytes) { |
SkPixmap pmap; |
@@ -1406,7 +1415,8 @@ void SkCanvas::internalDrawDevice(SkBaseDevice* srcDev, int x, int y, |
SkAutoTUnref<SkImageFilter::Cache> cache(dstDev->getImageFilterCache()); |
SkImageFilter::Context ctx(matrix, clipBounds, cache.get()); |
- sk_sp<SkSpecialImage> srcImg(SkSpecialImage::internal_fromBM(&proxy, srcBM)); |
+ sk_sp<SkSpecialImage> srcImg(SkSpecialImage::internal_fromBM(&proxy, srcBM, |
+ &dstDev->surfaceProps())); |
if (!srcImg) { |
continue; // something disastrous happened |
} |