Merge branch 'skal65535-master-patch-91082' into 'master'
More overflow fixes for large widths See merge request libtiff/libtiff!164
This commit is contained in:
commit
026c2bce9f
@ -774,10 +774,18 @@ gtTileSeparate(TIFFRGBAImage* img, uint32* raster, uint32 w, uint32 h)
|
||||
|
||||
flip = setorientation(img);
|
||||
if (flip & FLIP_VERTICALLY) {
|
||||
if ((tw + w) > INT_MAX) {
|
||||
TIFFErrorExt(tif->tif_clientdata, TIFFFileName(tif), "%s", "unsupported tile size (too wide)");
|
||||
return (0);
|
||||
}
|
||||
y = h - 1;
|
||||
toskew = -(int32)(tw + w);
|
||||
}
|
||||
else {
|
||||
if (tw > (INT_MAX + w)) {
|
||||
TIFFErrorExt(tif->tif_clientdata, TIFFFileName(tif), "%s", "unsupported tile size (too wide)");
|
||||
return (0);
|
||||
}
|
||||
y = 0;
|
||||
toskew = -(int32)(tw - w);
|
||||
}
|
||||
@ -945,7 +953,7 @@ gtStripContig(TIFFRGBAImage* img, uint32* raster, uint32 w, uint32 h)
|
||||
|
||||
flip = setorientation(img);
|
||||
if (flip & FLIP_VERTICALLY) {
|
||||
if ( w > 0x7FFFFFFFu ) {
|
||||
if ( w > INT_MAX ) {
|
||||
TIFFErrorExt(tif->tif_clientdata, TIFFFileName(tif), "Width overflow");
|
||||
return (0);
|
||||
}
|
||||
@ -1045,6 +1053,10 @@ gtStripSeparate(TIFFRGBAImage* img, uint32* raster, uint32 w, uint32 h)
|
||||
|
||||
flip = setorientation(img);
|
||||
if (flip & FLIP_VERTICALLY) {
|
||||
if ( w > INT_MAX ) {
|
||||
TIFFErrorExt(tif->tif_clientdata, TIFFFileName(tif), "Width overflow");
|
||||
return (0);
|
||||
}
|
||||
y = h - 1;
|
||||
toskew = -(int32)(w + w);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user