Index: src/image/SkImage_Gpu.cpp |
diff --git a/src/image/SkImage_Gpu.cpp b/src/image/SkImage_Gpu.cpp |
index 06ec224a2a9cbc23fa02b83288128a4252329b26..7eb728f55da8b3d524d1b6039f278fcb9379b554 100644 |
--- a/src/image/SkImage_Gpu.cpp |
+++ b/src/image/SkImage_Gpu.cpp |
@@ -583,7 +583,6 @@ size_t SkImage::getDeferredTextureImageData(const GrContextThreadSafeProxy& prox |
FILL_MEMBER(dtiBufferFiller, fColorTableCnt, &ctCount); |
FILL_MEMBER(dtiBufferFiller, fColorTableData, &ct); |
FILL_MEMBER(dtiBufferFiller, fMipMapLevelCount, &mipMapLevelCount); |
-// FILL_MEMBER(dtiBufferFiller, fMipMapLevelCount[0].fPixelData, &pixels); |
memcpy(reinterpret_cast<void*>(bufferAsInt + |
offsetof(DeferredTextureImage, fMipMapLevelData[0].fPixelData)), |
&pixels, sizeof(pixels)); |
@@ -605,11 +604,11 @@ size_t SkImage::getDeferredTextureImageData(const GrContextThreadSafeProxy& prox |
} |
// Fill in the mipmap levels if they exist |
- intptr_t mipLevelPtr = bufferAsInt + pixelOffset + SkAlign8(pixmap.getSafeSize()); |
+ intptr_t mipLevelPtr = pixelsAsInt + SkAlign8(pixmap.getSafeSize()); |
if (useMipMaps) { |
- // offsetof, which we use below, requires the type have standard layout |
- SkASSERT(std::is_standard_layout<MipMapLevelData>::value); |
+ static_assert(std::is_standard_layout<MipMapLevelData>::value, |
+ "offsetof, which we use below, requires the type have a standard layout"); |
SkAutoTDelete<SkMipMap> mipmaps(SkMipMap::Build(pixmap, gammaTreatment, nullptr)); |
// SkMipMap holds only the mipmap levels it generates. |
@@ -626,11 +625,11 @@ size_t SkImage::getDeferredTextureImageData(const GrContextThreadSafeProxy& prox |
mipmaps->getLevel(generatedMipLevelIndex, &mipLevel); |
// Make sure the mipmap data is after the start of the buffer |
- SkASSERT(mipLevelPtr > bufferAsInt); |
+ SkASSERT_RELEASE(mipLevelPtr > bufferAsInt); |
// Make sure the mipmap data starts before the end of the buffer |
- SkASSERT(static_cast<size_t>(mipLevelPtr) < bufferAsInt + pixelOffset + pixelSize); |
+ SkASSERT_RELEASE(static_cast<size_t>(mipLevelPtr) < bufferAsInt + pixelOffset + pixelSize); |
// Make sure the mipmap data ends before the end of the buffer |
- SkASSERT(mipLevelPtr + mipLevel.fPixmap.getSafeSize() <= |
+ SkASSERT_RELEASE(mipLevelPtr + mipLevel.fPixmap.getSafeSize() <= |
bufferAsInt + pixelOffset + pixelSize); |
// getSafeSize includes rowbyte padding except for the last row, |