Fixed warning C26451: Arithmetic overflow: Using operator '+' on a 4 byte value and then casting the result to a 8 byte value. Cast the value to the wider type before calling operator '+' to avoid overflow (io.2).

main
Sam Lantinga 2023-12-04 21:28:27 -08:00
parent 3775d9be4b
commit 230581f4a8
1 changed files with 6 additions and 6 deletions

View File

@ -296,8 +296,8 @@ static void transformSurfaceRGBA(SDL_Surface *src, SDL_Surface *dst, int isin, i
int y; int y;
for (y = 0; y < dst->h; y++) { for (y = 0; y < dst->h; y++) {
int x; int x;
double src_x = (rect_dest->x + 0 + 0.5 - center->x); double src_x = ((double)rect_dest->x + 0 + 0.5 - center->x);
double src_y = (rect_dest->y + y + 0.5 - center->y); double src_y = ((double)rect_dest->y + y + 0.5 - center->y);
int sdx = (int)((icos * src_x - isin * src_y) + cx - fp_half); int sdx = (int)((icos * src_x - isin * src_y) + cx - fp_half);
int sdy = (int)((isin * src_x + icos * src_y) + cy - fp_half); int sdy = (int)((isin * src_x + icos * src_y) + cy - fp_half);
for (x = 0; x < dst->w; x++) { for (x = 0; x < dst->w; x++) {
@ -364,8 +364,8 @@ static void transformSurfaceRGBA(SDL_Surface *src, SDL_Surface *dst, int isin, i
int y; int y;
for (y = 0; y < dst->h; y++) { for (y = 0; y < dst->h; y++) {
int x; int x;
double src_x = (rect_dest->x + 0 + 0.5 - center->x); double src_x = ((double)rect_dest->x + 0 + 0.5 - center->x);
double src_y = (rect_dest->y + y + 0.5 - center->y); double src_y = ((double)rect_dest->y + y + 0.5 - center->y);
int sdx = (int)((icos * src_x - isin * src_y) + cx - fp_half); int sdx = (int)((icos * src_x - isin * src_y) + cx - fp_half);
int sdy = (int)((isin * src_x + icos * src_y) + cy - fp_half); int sdy = (int)((isin * src_x + icos * src_y) + cy - fp_half);
for (x = 0; x < dst->w; x++) { for (x = 0; x < dst->w; x++) {
@ -437,8 +437,8 @@ static void transformSurfaceY(SDL_Surface *src, SDL_Surface *dst, int isin, int
*/ */
for (y = 0; y < dst->h; y++) { for (y = 0; y < dst->h; y++) {
int x; int x;
double src_x = (rect_dest->x + 0 + 0.5 - center->x); double src_x = ((double)rect_dest->x + 0 + 0.5 - center->x);
double src_y = (rect_dest->y + y + 0.5 - center->y); double src_y = ((double)rect_dest->y + y + 0.5 - center->y);
int sdx = (int)((icos * src_x - isin * src_y) + cx - fp_half); int sdx = (int)((icos * src_x - isin * src_y) + cx - fp_half);
int sdy = (int)((isin * src_x + icos * src_y) + cy - fp_half); int sdy = (int)((isin * src_x + icos * src_y) + cy - fp_half);
for (x = 0; x < dst->w; x++) { for (x = 0; x < dst->w; x++) {