Static analysis fix: division by zero.
parent
546cb8901e
commit
e84fc5a368
|
@ -1274,11 +1274,16 @@ SDL_SW_CopyYUVToRGB(SDL_SW_YUVTexture * swdata, const SDL_Rect * srcrect,
|
||||||
Uint32 target_format, int w, int h, void *pixels,
|
Uint32 target_format, int w, int h, void *pixels,
|
||||||
int pitch)
|
int pitch)
|
||||||
{
|
{
|
||||||
|
const int targetbpp = SDL_BYTESPERPIXEL(target_format);
|
||||||
int stretch;
|
int stretch;
|
||||||
int scale_2x;
|
int scale_2x;
|
||||||
Uint8 *lum, *Cr, *Cb;
|
Uint8 *lum, *Cr, *Cb;
|
||||||
int mod;
|
int mod;
|
||||||
|
|
||||||
|
if (targetbpp == 0) {
|
||||||
|
return SDL_SetError("Invalid target pixel format");
|
||||||
|
}
|
||||||
|
|
||||||
/* Make sure we're set up to display in the desired format */
|
/* Make sure we're set up to display in the desired format */
|
||||||
if (target_format != swdata->target_format) {
|
if (target_format != swdata->target_format) {
|
||||||
if (SDL_SW_SetupYUVDisplay(swdata, target_format) < 0) {
|
if (SDL_SW_SetupYUVDisplay(swdata, target_format) < 0) {
|
||||||
|
@ -1366,7 +1371,7 @@ SDL_SW_CopyYUVToRGB(SDL_SW_YUVTexture * swdata, const SDL_Rect * srcrect,
|
||||||
default:
|
default:
|
||||||
return SDL_SetError("Unsupported YUV format in copy");
|
return SDL_SetError("Unsupported YUV format in copy");
|
||||||
}
|
}
|
||||||
mod = (pitch / SDL_BYTESPERPIXEL(target_format));
|
mod = (pitch / targetbpp);
|
||||||
|
|
||||||
if (scale_2x) {
|
if (scale_2x) {
|
||||||
mod -= (swdata->w * 2);
|
mod -= (swdata->w * 2);
|
||||||
|
|
Loading…
Reference in New Issue