sw_engine raster: fix a mistake by the previous hot refactoring.
authorHermet Park <chuneon.park@samsung.com>
Wed, 24 Nov 2021 11:51:05 +0000 (20:51 +0900)
committerJunsuChoi <jsuya.choi@samsung.com>
Thu, 25 Nov 2021 00:34:37 +0000 (09:34 +0900)
src/lib/sw_engine/tvgSwRaster.cpp

index dcd82d7..5de990f 100644 (file)
@@ -590,7 +590,7 @@ static bool _rasterDownScaledRleRGBAImage(SwSurface* surface, const SwImage* ima
         auto ey1 = span->y * itransform->e12 + itransform->e13;
         auto ey2 = span->y * itransform->e22 + itransform->e23;
         auto dst = &surface->buffer[span->y * surface->stride + span->x];
-        for (uint32_t x = span->x; x < span->len; ++x, ++dst) {
+        for (uint32_t x = span->x; x < ((uint32_t)span->x) + span->len; ++x, ++dst) {
             auto rX = static_cast<uint32_t>(roundf(x * itransform->e11 + ey1));
             auto rY = static_cast<uint32_t>(roundf(x * itransform->e21 + ey2));
             if (rX >= w || rY >= h) continue;
@@ -616,7 +616,7 @@ static bool _rasterUpScaledRleRGBAImage(SwSurface* surface, const SwImage* image
         auto ey1 = span->y * itransform->e12 + itransform->e13;
         auto ey2 = span->y * itransform->e22 + itransform->e23;
         auto dst = &surface->buffer[span->y * surface->stride + span->x];
-        for (uint32_t x = span->x; x < span->len; ++x, ++dst) {
+        for (uint32_t x = span->x; x < ((uint32_t)span->x) + span->len; ++x, ++dst) {
             auto fX = x * itransform->e11 + ey1;
             auto fY = x * itransform->e21 + ey2;
             auto rX = static_cast<uint32_t>(roundf(fX));