diff options
author | Werner Lemberg <wl@gnu.org> | 2002-04-16 13:38:43 +0000 |
---|---|---|
committer | Werner Lemberg <wl@gnu.org> | 2002-04-16 13:38:43 +0000 |
commit | fd90abb07c1b4733014ffeeba18b5236f3e9bf15 (patch) | |
tree | a2800f574bcfd1aea9a1407ce3b6cd8658ea153d /src/pcf/pcfread.c | |
parent | 19ee6dfe892e93c0534f318618c7983251765d89 (diff) | |
download | freetype2-STABLE.tar.gz |
* src/pcf/pcfread (pcf_get_accell): Fix parsing of acceleratorSTABLE-2-1-0STABLE
tables.
Diffstat (limited to 'src/pcf/pcfread.c')
-rw-r--r-- | src/pcf/pcfread.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/src/pcf/pcfread.c b/src/pcf/pcfread.c index 407613c7e..f54ba7e4b 100644 --- a/src/pcf/pcfread.c +++ b/src/pcf/pcfread.c @@ -821,21 +821,31 @@ THE SOFTWARE. goto Bail; } - error = pcf_get_metric( stream, format, &(accel->minbounds) ); + /* the accelerator tables never use compressed metrics */ + + error = pcf_get_metric( stream, + format & ( ~PCF_FORMAT_MASK ), + &(accel->minbounds) ); if ( error ) goto Bail; - error = pcf_get_metric( stream, format, &(accel->maxbounds) ); + error = pcf_get_metric( stream, + format & ( ~PCF_FORMAT_MASK ), + &(accel->maxbounds) ); if ( error ) goto Bail; if ( PCF_FORMAT_MATCH( format, PCF_ACCEL_W_INKBOUNDS ) ) { - error = pcf_get_metric( stream, format, &(accel->ink_minbounds) ); + error = pcf_get_metric( stream, + format & ( ~PCF_FORMAT_MASK ), + &(accel->ink_minbounds) ); if ( error ) goto Bail; - error = pcf_get_metric( stream, format, &(accel->ink_maxbounds) ); + error = pcf_get_metric( stream, + format & ( ~PCF_FORMAT_MASK ), + &(accel->ink_maxbounds) ); if ( error ) goto Bail; } |