diff --git a/ChangeLog b/ChangeLog index 54ec7cbdd..ff26ffc0a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -5,6 +5,8 @@ * src/rgbfilt/ftrgbgen.h, src/rgbfilt/ftrgbgn2.h: fix some computation issues on 16-bit platforms. + * src/rgbfilt/ftrgb.c: fixed computation bug for vertical modes + 2005-09-27 David Turner * include/freetype/config/ftheader.h, include/freetype/ftrgb.h, diff --git a/src/rgbfilt/ftrgb.c b/src/rgbfilt/ftrgb.c index afa8dbbec..9b445515c 100644 --- a/src/rgbfilt/ftrgb.c +++ b/src/rgbfilt/ftrgb.c @@ -25,10 +25,10 @@ typedef struct FT_RgbFilterinRec_ /* these values come from libXft */ static const FT_RgbFilterRec ft_rgbfilter_default = { - { 65538*9/13, 65538*3/13, 65538*1/13, - 65538*1/6, 65538*4/6, 65538*1/6, + { 65538*9/13, 65538*3/13, 65538*1/13, + 65538*1/6, 65538*4/6, 65538*1/6, 65538*1/13, 65538*3/13, 65538*9/13 }, - NULL + NULL }; static void @@ -60,9 +60,9 @@ ft_rgbfilter_apply_argb_vrgb( FT_RgbFiltering oper ) { #define HMUL 1 #define VMUL 3 -#define OFF_R 0 -#define OFF_G 1 -#define OFF_B 2 +#define OFF_R (0*in_pitch) +#define OFF_G (1*in_pitch) +#define OFF_B (2*in_pitch) #include "ftrgbgen.h" } @@ -72,9 +72,9 @@ ft_rgbfilter_apply_argb_vbgr( FT_RgbFiltering oper ) { #define HMUL 1 #define VMUL 3 -#define OFF_R 2 -#define OFF_G 1 -#define OFF_B 0 +#define OFF_R (2*in_pitch) +#define OFF_G (1*in_pitch) +#define OFF_B (0*in_pitch) #include "ftrgbgen.h" } @@ -109,9 +109,9 @@ ft_rgbfilter_apply_inplace_vrgb( FT_RgbFiltering oper ) { #define HMUL 1 #define VMUL 3 -#define OFF_R 0 -#define OFF_G 1 -#define OFF_B 2 +#define OFF_R (0*in_pitch) +#define OFF_G (1*in_pitch) +#define OFF_B (2*in_pitch) #include "ftrgbgn2.h" } @@ -121,9 +121,9 @@ ft_rgbfilter_apply_inplace_vbgr( FT_RgbFiltering oper ) { #define HMUL 1 #define VMUL 3 -#define OFF_R 2 -#define OFF_G 1 -#define OFF_B 0 +#define OFF_R (2*in_pitch) +#define OFF_G (1*in_pitch) +#define OFF_B (0*in_pitch) #include "ftrgbgn2.h" }