Fixed memory scribbler in text vector blob 88/253388/1
authorDavid Steele <david.steele@samsung.com>
Tue, 9 Feb 2021 11:05:46 +0000 (11:05 +0000)
committerDavid Steele <david.steele@samsung.com>
Tue, 9 Feb 2021 11:09:45 +0000 (11:09 +0000)
In the case where mTextureWidth was greater than the width passed in,
the texture copy was scribbling outside the pixbuf array. Changed
it to use the width passed in, so the pixbuf array should contain
only the required blob data.

Change-Id: I6e7dcbf9bd9a12df06319c81448ae9641751b85a
Signed-off-by: David Steele <david.steele@samsung.com>
dali-toolkit/internal/text/rendering/vector-based/vector-blob-atlas.cpp

index 3b4270dc8c33360988501c11aaada2f5c714f2c1..0f11c11aea424d2ed3e5a6a01e9618ec23898f58 100644 (file)
@@ -195,7 +195,7 @@ void VectorBlobAtlas::TexSubImage(unsigned int offsetX,
   size_t dataIndex = 0;
   for(size_t y = 0; y < height; y++)
   {
-    pos = y * mTextureWidth * 4;
+    pos = y * width * 4;
     for(size_t x = 0; x < width; x++)
     {
       pixbuf[pos + x * 4]     = 0xFF & blob[dataIndex].r;