зеркало из https://github.com/stride3d/freetype.git
smooth: Exclude 16-bit system in invalid pitch/height check.
This commit is contained in:
Родитель
b16a942671
Коммит
057bc4c071
|
@ -1,5 +1,14 @@
|
|||
2009-07-31 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
|
||||
|
||||
smooth: Exclude 16-bit system in invalid pitch/height check.
|
||||
|
||||
* src/smooth/ftsmooth.c (ft_smooth_render_generic):
|
||||
pitch and height are typed as FT_UInt but checked to fit
|
||||
16-bit range, to avoid the overflows. On 16-bit system,
|
||||
this checking inserts a conditional that never occurs.
|
||||
|
||||
2009-07-03 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
|
||||
|
||||
cff: Type large constants > 0x7FFF as long for 16-bit systems.
|
||||
|
||||
* src/cff/cffload.c (cff_charset_load): Type large
|
||||
|
|
|
@ -196,6 +196,8 @@
|
|||
|
||||
#endif
|
||||
|
||||
#if FT_UINT_MAX > 0xFFFFU
|
||||
|
||||
/* Required check is ( pitch * height < FT_ULONG_MAX ), */
|
||||
/* but we care realistic cases only. Always pitch <= width. */
|
||||
if ( width > 0xFFFFU || height > 0xFFFFU )
|
||||
|
@ -205,6 +207,8 @@
|
|||
return Smooth_Err_Raster_Overflow;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
bitmap->pixel_mode = FT_PIXEL_MODE_GRAY;
|
||||
bitmap->num_grays = 256;
|
||||
bitmap->width = width;
|
||||
|
|
Загрузка…
Ссылка в новой задаче