--- core/fxge/cfx_glyphcache.cpp +++ core/fxge/cfx_glyphcache.cpp @@ -183,7 +183,8 @@ std::unique_ptr CFX_GlyphCache::RenderGlyph( } } } else { - memset(pDestBuf, 0, dest_pitch * bmheight); + if (dest_pitch != 0 && bmheight != 0) + memset(pDestBuf, 0, dest_pitch * bmheight); int rowbytes = std::min(abs(src_pitch), dest_pitch); for (int row = 0; row < bmheight; row++) memcpy(pDestBuf + row * dest_pitch, pSrcBuf + row * src_pitch, rowbytes);