diff options
Diffstat (limited to 'src/render/sdl2softwaregraphics.cpp')
-rw-r--r-- | src/render/sdl2softwaregraphics.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/render/sdl2softwaregraphics.cpp b/src/render/sdl2softwaregraphics.cpp index 54cd010a8..a176b6905 100644 --- a/src/render/sdl2softwaregraphics.cpp +++ b/src/render/sdl2softwaregraphics.cpp @@ -1241,8 +1241,9 @@ void SDL2SoftwareGraphics::drawHLine(int x1, int y, int x2) case 2: { uint16_t* q = reinterpret_cast<uint16_t*>(p); + const uint16_t pixel1 = static_cast<uint16_t>(pixel); for (; x1 <= x2; ++x1) - *(q++) = pixel; + *(q++) = pixel1; break; } @@ -1277,7 +1278,7 @@ void SDL2SoftwareGraphics::drawHLine(int x1, int y, int x2) if (mAlpha) { unsigned char a = static_cast<unsigned char>(mColor.a); - unsigned char a1 = 255 - a; + unsigned char a1 = static_cast<unsigned char>(255U - a); const int b0 = (pixel & 0xff) * a; const int g0 = (pixel & 0xff00) * a; const int r0 = (pixel & 0xff0000) * a; @@ -1406,7 +1407,7 @@ void SDL2SoftwareGraphics::drawVLine(int x, int y1, int y2) if (mAlpha) { unsigned char a = static_cast<unsigned char>(mColor.a); - unsigned char a1 = 255 - a; + unsigned char a1 = static_cast<unsigned char>(255U - a); const int b0 = (pixel & 0xff) * a; const int g0 = (pixel & 0xff00) * a; const int r0 = (pixel & 0xff0000) * a; |