summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAdrian Johnson <ajohnson@redneon.com>2011-02-08 21:40:08 +1030
committerAdrian Johnson <ajohnson@redneon.com>2011-02-08 21:40:08 +1030
commit0984c9ea27318e852d78ce76a62e08db20e02f4d (patch)
tree2cc460f64615241dccb9d2b3a37fbe8dec4a5cce /src
parent5f039f0f894082c383884595220f6f0368ab72cf (diff)
Type1-subset: Fallback if font contains more than one /Encoding
https://bugzilla.gnome.org/show_bug.cgi?id=641704
Diffstat (limited to 'src')
-rw-r--r--src/cairo-type1-subset.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/cairo-type1-subset.c b/src/cairo-type1-subset.c
index e0b1bf8a2..082526d55 100644
--- a/src/cairo-type1-subset.c
+++ b/src/cairo-type1-subset.c
@@ -422,6 +422,10 @@ cairo_type1_font_subset_write_header (cairo_type1_font_subset_t *font,
return CAIRO_INT_STATUS_UNSUPPORTED;
end += 3;
+ /* There are some buggy fonts that contain more than one /Encoding */
+ if (find_token (end, segment_end, "/Encoding"))
+ return CAIRO_INT_STATUS_UNSUPPORTED;
+
_cairo_output_stream_write (font->output, end, segment_end - end);
return font->output->status;