diff options
author | Igor Melichev <igor.melichev@artifex.com> | 2005-04-04 23:00:24 +0000 |
---|---|---|
committer | Igor Melichev <igor.melichev@artifex.com> | 2005-04-04 23:00:24 +0000 |
commit | bf68f8d8053ee7503f397460b9a02e521de39db8 (patch) | |
tree | 97cf99e8c2ad5f146e68b6484c89f21f34cdc59f | |
parent | c61df003a686a5cb8319a57ab992a82a80ba26ef (diff) | |
download | ghostpdl-bf68f8d8053ee7503f397460b9a02e521de39db8.tar.gz |
Fix : LZWEncode filtyer template didn't provide a set_defaults method.
DETAILS :
A problem happens when converting comparefiles\PT.ps with ps2write :
an encoded stream could not decode. The reason is that pdf_flate_binary
did not set defaults to LZWE template.
1. Provided a set_defaults method (fixes pdf_flate_binary).
2. Used it instead an old hack in gdevpsdi.c (a minor improvement).
EXPECTED DIFFERENCES :
None.
git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@5825 a1074d23-0009-0410-80fe-cf8c14f379e6
-rw-r--r-- | gs/src/gdevpsdi.c | 5 | ||||
-rw-r--r-- | gs/src/slzwe.c | 3 |
2 files changed, 4 insertions, 4 deletions
diff --git a/gs/src/gdevpsdi.c b/gs/src/gdevpsdi.c index 03b388d94..0ed5e6cda 100644 --- a/gs/src/gdevpsdi.c +++ b/gs/src/gdevpsdi.c @@ -193,9 +193,8 @@ setup_image_compression(psdf_binary_writer *pbw, const psdf_image_params *pdip, /* psdf_DCT_filter already did the psdf_encode_binary. */ return 0; } else if (template == &s_LZWE_template) { - stream_LZW_state *const ss = (stream_LZW_state *) st; - - s_LZW_set_defaults_inline(ss); + if (template->set_defaults) + (*template->set_defaults) (st); } code = psdf_encode_binary(pbw, template, st); if (code >= 0) diff --git a/gs/src/slzwe.c b/gs/src/slzwe.c index 3e6a8f053..dcf7d711a 100644 --- a/gs/src/slzwe.c +++ b/gs/src/slzwe.c @@ -203,5 +203,6 @@ out: ss->prev_code = code; /* Stream template */ const stream_template s_LZWE_template = -{ &st_LZW_state, s_LZWE_init, s_LZWE_process, 1, 4, s_LZW_release +{ &st_LZW_state, s_LZWE_init, s_LZWE_process, 1, 4, s_LZW_release, + s_LZW_set_defaults }; |