fix crash when zooming out on small images (#178)

When rendering images, destination image width and height may become
zero due to float-to-int conversion after zoom calculation, later
crashing when creating an image using those dimensions. This sets
a minimum of 1 to both variables.

Closes #82
This commit is contained in:
mamg22 2021-11-30 19:52:09 -04:00 committed by GitHub
parent 3bc7082f4e
commit 127abbea77
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -602,7 +602,7 @@ void img_render(img_t *img)
sx = 0;
sw = img->w;
dx = img->x;
dw = img->w * img->zoom;
dw = MAX(img->w * img->zoom, 1);
}
if (img->y <= 0) {
sy = -img->y / img->zoom + 0.5;
@ -613,7 +613,7 @@ void img_render(img_t *img)
sy = 0;
sh = img->h;
dy = img->y;
dh = img->h * img->zoom;
dh = MAX(img->h * img->zoom, 1);
}
win_clear(win);