* src/pcf/pcfread (pcf_get_accell): Fix parsing of accelerator
tables.
diff --git a/ChangeLog b/ChangeLog
index 72791b2..c473643 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2002-04-16  Francesco Zappa Nardelli  <Francesco.Zappa.Nardelli@ens.fr>
+
+	* src/pcf/pcfread (pcf_get_accell): Fix parsing of accelerator
+	tables.
+
 2002-03-29  KUSANO Takayuki  <AE5T-KSN@asahi-net.or.jp>
 
 	* src/sfnt/sfobjs.c (Get_Name): Handle (3,0) name entries similar to
@@ -16,7 +21,7 @@
 2002-03-25  David Turner  <david@freetype.org>
 
 	* src/base/fttrigon.c, src/truetype/ttinterp.c: Fixing the TrueType
-	bytecode interpreter to compute the same values than FreeType 1.
+	bytecode interpreter to compute the same values as FreeType 1.
 
 	The difference came from distinct algorithm for computing the dot
 	product and vector lengths.  It seems that TT bytecode
@@ -39,9 +44,11 @@
 
 2002-03-08  David Turner  <david@freetype.org>
 
+
 	* Version 2.0.9 Released.
 	=========================
 
+
 	* README: updating the FTP addresses of the documentation
 
 	* Jamfile.in, Jamfile: Adding the template file that will be used to
@@ -165,9 +172,11 @@
 
 2002-02-08  David Turner  <david@freetype.org>
 
+
 	* Version 2.0.8 released.
 	=========================
 
+
 	* docs/CHANGES: Updating for 2.0.8.
 
 	* include/freetype/freetype.h: Setting PATCH_LEVEL to 8 and
diff --git a/src/pcf/pcfread.c b/src/pcf/pcfread.c
index 407613c..f54ba7e 100644
--- a/src/pcf/pcfread.c
+++ b/src/pcf/pcfread.c
@@ -821,21 +821,31 @@
         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;
     }