Index: src/codec/SkCodec_libgif.cpp |
diff --git a/src/codec/SkCodec_libgif.cpp b/src/codec/SkCodec_libgif.cpp |
index efb3a90ea4e1911e89e6fb8eed33fd379bb483ba..bfa6e03eec6d8553d6f6fc340f6654ffd1fa6aaf 100644 |
--- a/src/codec/SkCodec_libgif.cpp |
+++ b/src/codec/SkCodec_libgif.cpp |
@@ -425,7 +425,7 @@ SkCodec::Result SkGifCodec::onGetPixels(const SkImageInfo& dstInfo, |
// animated gifs where we draw on top of the |
// previous frame. |
if (!skipBackground) { |
- SkSwizzler::Fill(dst, dstInfo, dstRowBytes, 0, fillIndex, colorTable); |
+ SkSwizzler::Fill(dst, dstInfo, dstRowBytes, height, fillIndex, colorTable); |
} |
// Modify the dst pointer |
@@ -478,8 +478,8 @@ SkCodec::Result SkGifCodec::onGetPixels(const SkImageInfo& dstInfo, |
if (GIF_ERROR == DGifGetLine(fGif, buffer.get(), |
innerWidth)) { |
if (!skipBackground) { |
- SkSwizzler::Fill(dst, dstInfo, dstRowBytes, y, fillIndex, |
- colorTable); |
+ SkSwizzler::Fill(swizzler->getDstRow(), dstInfo, dstRowBytes, |
+ innerHeight - y, fillIndex, colorTable); |
} |
return gif_error(SkStringPrintf( |
"Could not decode line %d of %d.\n", |