From ab729fc1986ff795f9fb862227b86ee4685081fa Mon Sep 17 00:00:00 2001 From: scawful Date: Thu, 15 May 2025 22:59:17 -0400 Subject: [PATCH] Fix color conversion to ensure proper type casting in SNES color functions - Updated ConvertRgbToSnes function to use static_cast for color channel values, ensuring correct conversion to uint8_t. - Modified SnesColor constructor to apply static_cast for color channel values during initialization, improving accuracy in color representation. --- src/app/gfx/snes_color.cc | 6 +++--- src/app/gfx/snes_color.h | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/app/gfx/snes_color.cc b/src/app/gfx/snes_color.cc index 221477d7..8ca2e58e 100644 --- a/src/app/gfx/snes_color.cc +++ b/src/app/gfx/snes_color.cc @@ -39,9 +39,9 @@ uint16_t ConvertRgbToSnes(const snes_color& color) { uint16_t ConvertRgbToSnes(const ImVec4& color) { snes_color new_color; - new_color.red = color.x * kColorByteMax; - new_color.green = color.y * kColorByteMax; - new_color.blue = color.z * kColorByteMax; + new_color.red = static_cast(color.x) * kColorByteMax; + new_color.green = static_cast(color.y) * kColorByteMax; + new_color.blue = static_cast(color.z) * kColorByteMax; return ConvertRgbToSnes(new_color); } diff --git a/src/app/gfx/snes_color.h b/src/app/gfx/snes_color.h index 35020a55..3adc862c 100644 --- a/src/app/gfx/snes_color.h +++ b/src/app/gfx/snes_color.h @@ -42,9 +42,9 @@ class SnesColor { constexpr explicit SnesColor(const ImVec4 val) : rgb_(val) { snes_color color; - color.red = val.x / kColorByteMax; - color.green = val.y / kColorByteMax; - color.blue = val.z / kColorByteMax; + color.red = static_cast(val.x) / kColorByteMax; + color.green = static_cast(val.y) / kColorByteMax; + color.blue = static_cast(val.z) / kColorByteMax; snes_ = ConvertRgbToSnes(color); }