Fixed memory scribbler in text vector blob 92/253492/1
authorDavid Steele <david.steele@samsung.com>
Tue, 9 Feb 2021 11:05:46 +0000 (11:05 +0000)
committerAdeel Kazmi <adeel.kazmi@samsung.com>
Thu, 11 Feb 2021 16:32:51 +0000 (16:32 +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>
(cherry picked from commit 6ee6340bae8a44b9257db3d7729e0018e1addb3d)

dali-toolkit/internal/text/rendering/vector-based/vector-blob-atlas.cpp

index 3b4270d..0f11c11 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;