diff --git a/src/conio/sdl_con.c b/src/conio/sdl_con.c index 4d3fa0cb4d4531c04796b927e46819a7ca932f23..55503fe2ca93ee120d8d11091bba1ac5b9c91d9b 100644 --- a/src/conio/sdl_con.c +++ b/src/conio/sdl_con.c @@ -443,10 +443,10 @@ void sdl_user_func(int func, ...) return; } pal = (struct sdl_palette *)ev.user.data1; - pal->index = va_arg(argptr, int) >> 8; - pal->r = va_arg(argptr, int) >> 8; - pal->g = va_arg(argptr, int) >> 8; - pal->b = va_arg(argptr, int) >> 8; + pal->index = va_arg(argptr, uint32_t); + pal->r = (va_arg(argptr, int) >> 8) & 0xffff; + pal->g = (va_arg(argptr, int) >> 8) & 0xffff; + pal->b = (va_arg(argptr, int) >> 8) & 0xffff; break; case SDL_USEREVENT_COPY: case SDL_USEREVENT_PASTE: