diff options
Diffstat (limited to 'src/effects/SkBitmapSource.cpp')
-rw-r--r-- | src/effects/SkBitmapSource.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/effects/SkBitmapSource.cpp b/src/effects/SkBitmapSource.cpp index ee8b798936..2624229aee 100644 --- a/src/effects/SkBitmapSource.cpp +++ b/src/effects/SkBitmapSource.cpp @@ -32,6 +32,12 @@ SkBitmapSource::SkBitmapSource(const SkBitmap& bitmap, } SkFlattenable* SkBitmapSource::CreateProc(SkReadBuffer& buffer) { + SkFilterQuality filterQuality; + if (buffer.isVersionLT(SkReadBuffer::kBitmapourceFilterQuality_Version)) { + filterQuality = kHigh_SkFilterQuality; + } else { + filterQuality = (SkFilterQuality)buffer.readInt(); + } SkRect src, dst; buffer.readRect(&src); buffer.readRect(&dst); @@ -39,10 +45,11 @@ SkFlattenable* SkBitmapSource::CreateProc(SkReadBuffer& buffer) { if (!buffer.readBitmap(&bitmap)) { return NULL; } - return SkBitmapSource::Create(bitmap, src, dst); + return SkBitmapSource::Create(bitmap, src, dst, filterQuality); } void SkBitmapSource::flatten(SkWriteBuffer& buffer) const { + buffer.writeInt(fFilterQuality); buffer.writeRect(fSrcRect); buffer.writeRect(fDstRect); buffer.writeBitmap(fBitmap); |