summaryrefslogtreecommitdiff
path: root/src/smooth/ftsmooth.c
diff options
context:
space:
mode:
authorWerner Lemberg <wl@gnu.org>2012-02-26 20:54:19 +0100
committerWerner Lemberg <wl@gnu.org>2012-02-26 20:54:19 +0100
commitfcbc82e69e7b114b0db75e955896107d611898e6 (patch)
tree521625888d37cc9e82cce0d6d953b8b103657f84 /src/smooth/ftsmooth.c
parentc42848e6d9d2a2aa9adcc99fa4e817f4e4e9f656 (diff)
downloadfreetype2-fcbc82e69e7b114b0db75e955896107d611898e6.tar.gz
[smooth] Fix Savannah bug #35604.
* src/smooth/ftsmooth.c (ft_smooth_render_generic): Use `FT_Pos' instead of `FT_UInt' for some variables and update comparisons accordingly. A detailed analysis can be found in the bug report.
Diffstat (limited to 'src/smooth/ftsmooth.c')
-rw-r--r--src/smooth/ftsmooth.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/smooth/ftsmooth.c b/src/smooth/ftsmooth.c
index 7d35cf272..00499cc28 100644
--- a/src/smooth/ftsmooth.c
+++ b/src/smooth/ftsmooth.c
@@ -4,7 +4,7 @@
/* */
/* Anti-aliasing renderer interface (body). */
/* */
-/* Copyright 2000-2006, 2009-2011 by */
+/* Copyright 2000-2006, 2009-2012 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -105,9 +105,9 @@
FT_Error error;
FT_Outline* outline = NULL;
FT_BBox cbox;
- FT_UInt width, height, pitch;
+ FT_Pos width, height, pitch;
#ifndef FT_CONFIG_OPTION_SUBPIXEL_RENDERING
- FT_UInt height_org, width_org;
+ FT_Pos height_org, width_org;
#endif
FT_Bitmap* bitmap;
FT_Memory memory;
@@ -151,7 +151,7 @@
return Smooth_Err_Raster_Overflow;
}
else
- width = (FT_UInt)( ( cbox.xMax - cbox.xMin ) >> 6 );
+ width = ( cbox.xMax - cbox.xMin ) >> 6;
if ( cbox.yMin < 0 && cbox.yMax > FT_INT_MAX + cbox.yMin )
{
@@ -161,7 +161,7 @@
return Smooth_Err_Raster_Overflow;
}
else
- height = (FT_UInt)( ( cbox.yMax - cbox.yMin ) >> 6 );
+ height = ( cbox.yMax - cbox.yMin ) >> 6;
bitmap = &slot->bitmap;
memory = render->root.memory;
@@ -223,7 +223,7 @@
/* Required check is ( pitch * height < FT_ULONG_MAX ), */
/* but we care realistic cases only. Always pitch <= width. */
- if ( width > 0x7FFFU || height > 0x7FFFU )
+ if ( width > 0x7FFF || height > 0x7FFF )
{
FT_ERROR(( "ft_smooth_render_generic: glyph too large: %u x %u\n",
width, height ));