summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--docs/CHANGES3
-rw-r--r--src/pshinter/pshrec.c9
3 files changed, 16 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 3b43acd3f..d969cbc86 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2004-02-20 Werner Lemberg <wl@gnu.org>
+
+ * src/pshinter/pshrec.c (ps_mask_table_set_bits): Don't call
+ ps_mask_table_alloc but ps_mask_table_last.
+ (ps_hints_t2mask): Use correct position and number for vertical
+ and horizontal hinter mask bits.
+
+ * docs/CHANGES: Updated.
+
2004-02-19 Werner Lemberg <wl@gnu.org>
* src/base/ftstroke.c (FT_Glyph_StrokeBorder): Fix enum handling.
diff --git a/docs/CHANGES b/docs/CHANGES
index 3369d7e83..86a227e0a 100644
--- a/docs/CHANGES
+++ b/docs/CHANGES
@@ -32,6 +32,9 @@ LATEST CHANGES BETWEEN 2.1.8 and 2.1.7
- The flex operator didn't work for CFF fonts.
+ - PS glyphs which use the `hintmask' operator haven't been rendered
+ correctly in some cases.
+
- Metrics for BDF and PCF bitmap font formats have been fixed.
- The `freetype-config' script now handles --prefix and
diff --git a/src/pshinter/pshrec.c b/src/pshinter/pshrec.c
index 13e0795c5..648de18bc 100644
--- a/src/pshinter/pshrec.c
+++ b/src/pshinter/pshrec.c
@@ -4,7 +4,7 @@
/* */
/* FreeType PostScript hints recorder (body). */
/* */
-/* Copyright 2001, 2002, 2003 by */
+/* Copyright 2001, 2002, 2003, 2004 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -318,8 +318,7 @@
PS_Mask mask;
- /* allocate new mask, and grow it to "bit_count" bits */
- error = ps_mask_table_alloc( table, memory, &mask );
+ error = ps_mask_table_last( table, memory, &mask );
if ( error )
goto Exit;
@@ -1018,12 +1017,12 @@
}
/* set-up new horizontal and vertical hint mask now */
- error = ps_dimension_set_mask_bits( &dim[0], bytes, 0, count1,
+ error = ps_dimension_set_mask_bits( &dim[0], bytes, count2, count1,
end_point, memory );
if ( error )
goto Fail;
- error = ps_dimension_set_mask_bits( &dim[1], bytes, count1, count2,
+ error = ps_dimension_set_mask_bits( &dim[1], bytes, 0, count2,
end_point, memory );
if ( error )
goto Fail;