summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-03-28Update documentation, changelogs and the GS_PRODUCTFAMILY string forChris Liddell60-3803/+3153
a 9.02 release candidate. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12313 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-28Reduce duplication of changelog and news by deprecating Changes.htm andChris Liddell4-4631/+22
Details#.htm. The information will now be in two places only: the highlights summary in News.htm, and the detailed changes in History#.htm. Update related documentation and html links to reflect this change. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12312 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-26Fix for issue found by Chris where we have a soft mask embedded in a ↵Michael Vrhel2-65/+58
softmask and graphic state pushes and pops occurring. In this case, the soft mask stack that is saved gets out of sync compared to the one in the context state. Use of the stack count can catch the issue and correct it. Also a rename of one of the variables in the pdf14 code to make it easier to debug. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12311 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-25Fixes concerning the compatibility of the OpenPrinting Vector ("opvp")Till Kamppeter1-0/+86
output device with Ghostscript 9.x. 1. If there is any ICCColor based image in the PostScript input, GS crashes. 2. Fallback when path is too complex for some kinds of printers. This problem already existed in GS 8.x. Thanks to Koji Otani from BBR Inc., Japan. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12310 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-25The code was erroneously attempting to get a glyph name for a case whereChris Liddell1-1/+6
we already had a glyph index for a Truetype font. Add a check for object type before trying to get a string from a name object. Bug 692095 No cluster differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12309 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-24Resolve build issues with language_switch and UFST.Chris Liddell6-14/+22
I had (wrongly) assumed that the PCL/language_switch builds with UFST and COMPILE_INITS=1 would have the relevant paths correctly setup for the PS/PDF world to access the Microtype FCOs. It turns out they are done in an incompatible manner. So, I've renamed the path variables (in the makefiles) so there isn't a clash between PCL and PS/PDF, ensured that the variables are correctly passed through recursive (n)make calls, and tidied up the FAPI options for the language_switch build. Not only does this allow language_switch to build with the UFST, but the Postscript interpreter does now use FAPI/UFST to access the Microtype fonts for the built-in fonts, and uses FAPI/Freetype for downloaded fonts. Bug 692093 No cluster differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12308 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-24Fix for compiler warning.Michael Vrhel1-1/+1
git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12307 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-23This commit fixes several issues.Michael Vrhel11-41/+291
Memory leaks in the PDF14 device as well as the separation devices. Fixes in PDF14 device so the the color encoder and decoder are properly updated if soft masks occur with spot colors. Proper copying of the devicen parameters to the clist devices in the MT rendering. This was the source of a problem when doing multi-threaded rendering to separation devices. This fixes bug 692087 git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12306 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-21Fix for memory leaks in the pdf14 device. These could occur with softmask ↵Michael Vrhel1-3/+13
and graphic state changes as well as when we are going to a tiffsep device. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12305 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-20Fix for bug 692087 crashes. num_bytes - bytes_dropped was ending up ↵Michael Vrhel1-2/+2
negative in cases where the transparency device was reducing the number of colorants compared to the target device (mainly when we had a softmask) which was getting passed into the clist as an unsigned value. Now when this occurs we just use the encoding of the full color value. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12304 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-19A temp fix for bugs 692038 and 692065. The clist devices that are created ↵Michael Vrhel1-0/+6
for the threads now inherit the icc profile from the target device. I need to set things up so that the device profile is no longer reference counted since we could have a race condition problem if the different threads are incrementing and decrementing the count and if the command is not atomic on a particular architecture. The plan will be to no longer ref count the device profile but to have it maintained until the the actual target device is destroyed. There will be a bit of work to do with respect to the pdf14 device, which can have a device profile that is different than the actual target device. That profile can be altered with the transparency group pushes and pops. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12303 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-19Fix for some strange rendering with PDF 1.7 FTS files when we have shading ↵Ray Johnston1-1/+20
and transparency and are both filling and stroking text (Text Rendering modes 2 and 6). Customer 532. EXPECTED DIFFERENCES: PDF_1.7_FTS/fts_15_ group, 1509, 1511, 1513, 1515, 1517, 1519 and 1521. Examined with bmpcmp and all seem to be progressions. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12302 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-18Fix so that image_parent_type is properly initialized during clist image ↵Michael Vrhel3-0/+10
reading. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12301 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-17Escape/quote the UFST path settings in the makefile so that the macrosChris Liddell1-2/+2
correctly expand to strings. Bug 692082 No cluster differences expected git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12300 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-17Uncached glyphs were ignoring rendering mode 3, and being imagedChris Liddell1-1/+9
directly to the device - for cached glyphs the decision occurred in the "show machinery". This wasn't my first choice solution, but all the others I tried caused problems with later use of a cached glyph (which wasn't actually cached), or problems with pdfwrite, pswrite or ps2write. Bug 692004 No cluster differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12299 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-17Fix some issue where user specified devices didn't get the requisite "$(DD)"Chris Liddell1-84/+107
and ".dev" runes added to them. Also, rearrange the "pre-declared" device strings to be more consistent within configure.ac Bug 692062 No cluster differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12298 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-16Revert part of the optimization in revision 12036 - we go back toHenry Stiles2-8/+2
blanking the page when the device is opened. Fixes bug #692075. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12297 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-16Update the modified pl_main so that it returns the value from pl_main_aux, ↵Ken Sharp1-2/+1
to silence compiler warnings and also so that it returns a value to the caller. No differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12296 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-15Add special case mem_planar_copy_color_4to1 code for copying bitsRobin Watts1-0/+183
from 4 1 bit planes into 1 4 bit chunky plane. This helps with performance of the plibk device. No cluster differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12295 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-15Remove a '#if 0' accidentally committed.Ken Sharp1-3/+0
No differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12294 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-15Refactor the Windows display device code to remove the duplication of ↵Ken Sharp3-645/+39
elements in pl_main.c. This introduces a new API call pl_main_aux which accepts an additional parameter containing a pointer to a display_callback structure if the display device is to be used. This should be NULL if the display device is not used. If the display device is selected and the callback structure pointer is NULL then an error is raised. No differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12293 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-15Fix (ps2write) : Indexed colour images have incorrect /DecodeKen Sharp2-2/+2
Bug #691924 "Differences in colour with ps2write" The problem was due to the opdfread code generating a /Decode for an Indexed colour space where the value was [0 2^n] and should be [0 ((2^n) - 1)]. This caused the highest image sample to be mapped to 1 past the end of the samples in the colour space. Normally this doesn't matter, because the values are clamped to 'hival' in the Indexed space. In this case, however, the image was 2 bpp (4 values) but the colour space was defined as a full 256 indices, with only the first 4 being used. The incorrect Decode caused the image sample value 3 to be looked up as colour space sample 4, which was set to all 0 (black) causing incorrect colour values. Expected differences About 67 differences are expected, all in the same kind of Indexed space. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12292 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-14Use the return error code e_ExitLanguage when we exceed the pageHenry Stiles1-2/+2
range. This prevents an error message being printed each time the FirstPage and LastPage parameters are used, bug #691610. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12291 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-14Reintroduce commented out PACIFY_VALGRIND definition in gximono.c - without itRobin Watts2-156/+180
the comment makes no sense. Add new PACIFY_VALGRIND code (and commented out definition) in gxht_threshold.c. Fix some line endings. No real code change, so no cluster differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12290 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-14Fix an indetermism in the halftoning code. When mapping a y offset into aRobin Watts1-0/+2
row index for a halftone tile, special care needs to be taken when y is negative. Proof (as if more were needed) that the % operator in C is evil. The command in question was a cutdown version of C306.bin rendered at 600bpi to pbmraw with dMaxBitmap=10000. It now runs into a clist UMR. Will keep looking. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12289 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-14Fix (ps2write) : Don't set a default halftone.Ken Sharp2-1/+10
Bug #691923 "Differences in dithered output with ps2write" The PDF interpreter emits a setpagdevice between every page of output, in case the media size has changed. The implementation of setpagedevice resets the halftone to be the default halftone (106 lpi 45 degree line screen). This is a problem for ps2write, and potantially pdfwrite, as there is no way to differentiate between a default halftone set by setpagdevice, and a halftone contained in the input file. To avoid embedding an unhelpful halftone, we now check the device parameter '/HighLevelDevice' in the setpagedevice implementation, and if it is present and true, we do not call .setdefaulthalftone. Also updates documentation on device parameters. This causes differences on every 1-bit rendering test (ie pkmraw) of the ps2write output file, so approximately 1300 differences are to be expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12288 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-14Fix Bug 692064. Tiffscaled device was checking on page print time that theRobin Watts1-3/+0
expected size of the page wouldn't make the page too large to fit in a file. This code was copied from the tiffgray device (as we render internally in 8bpp). As we output in monochrome however (and may use compression) the test is in fact bogus, and should simply be removed. We do that here. It's entirely possible that we should be removing the test from the tiffgray device too - most systems with 32bit longs support large files these days, and compression may apply here too anyway. I'll leave this until it becomes an issue though. No cluster differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12287 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-13Some updates to the new device parameters. It turned out that the intended ↵Ken Sharp5-5/+55
parameter Type32ToUnicode was incorrectly implemented. This should actually have used the WantsToUnicode parameter, because the code actually controls the processing of GlyphNames2Unicode tables from Windows PostScript. This means we no longer need the Type32ToUnicode parameter and it has been removed. Added initial documentation of these parameters. This appears to cause some differences in Bug690829.ps rendered at 300 dpi. This is a surprise, because the changes should have no effect on devices other than pdfwrite/ps2write, but the new result is better than the old, so this is a progression. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12286 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-13Remove spurious debug printout inserted in rev 12141 line 780:Ray Johnston1-1/+0
1 index == 0 index == git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12285 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-11Change the default value for the 'AllowPSRepeat' so that it defaults to ↵Ken Sharp1-1/+1
allowed instead of disallowed (doh!) This is important for those devices which don't set the device parameter. No differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12284 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-11Remove a #if 0 accidentally left in the commit for revision 12282. Also ↵Ken Sharp1-5/+2
initialise a variable, just in case. No differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12283 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-11The final removal of the reliance on testing the device name to influence ↵Ken Sharp1-3/+21
interpreter behaviour. This tests the /AllowPSRepeat paramter and flags an error if a function tries to use 'repeat' when it is disallowed. Still to do: write some documentation on these new parameters. No differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12282 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-11Add the new third party library directories to the Windows nmake zip fileChris Liddell1-1/+1
target. No cluster differences. Bug 691944 Credit to: Gennadiy Tsarenkov. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12281 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-11Rejig the romfs targets so that unix make can follow the dependencies.Chris Liddell2-8/+9
This should prevent the pointless rebuilding of the romfs C source. Bug 692053 No cluster differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12280 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-11Some (broken) TrueType fonts have out of order loca tables, which can resultChris Liddell2-19/+41
in the calculated glyph data lengths being larger than the actual available glyph data. Normally this does not cause a problem, but if the glyph in question is in the final bytes of the stream, we encounter an unexpected end of data condition when creating the glyph data buffer to pass into Freetype. So the FAPI interface code will now ignore that error, and adjust the byte length to correctly reflect the number of bytes available in the buffer. It is safe to do this because, in the event we have a genuine out-of-data condition, Freetype will return an error when it tries to interpret the glyph outline. Bug 692043 No cluster differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12279 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-11Code to support Cyrillic, Greek, Arabic, Baltic symbol sets, see theHenry Stiles6-50/+1023
reference bug #690706 for details. Thanks to Josef Hinteregger for writing and testing the code to support the new sets. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12278 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-11Fix missing header problem on older versions of MSVC.Alex Cherepanov1-6/+5
git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12277 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-11A reorganization of the halftone code in preparation of doing thresholding ↵Michael Vrhel5-234/+288
of color images. This basically pulls out some code pieces that will be shared in all the image thresholding cases. No differences expected (or seen in the cluster push). git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12276 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-10I missed one change in commit 12274. The detection of chunky modes shouldRobin Watts1-1/+1
look at num_planes being <= 1, not == 1. I tested this locally and then clearly missed it when cluster pushing. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12275 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-10Planar device is broken w.r.t rops in a cmyk space - this commit fixes it.Robin Watts2-375/+547
The planar memory device sets itself to use gx_default_strip_copy_rop rather than mem_strip_copy_rop. mem_strip_copy_rop knows that rops on cmyk pixels should actually convert to rgb, perform the rop, and convert back again, but doesn't know how to convert the results back when it's in planar mode. gs_default_strip_copy_rop can cope with planar mode, but doesn't know to convert to rgb first. The first fix included here is to extend mem_strip_copy_rop to know how to write back to planar format, and then to make the planar memory device use mem_strip_copy_rop. This then exposes various flaws in mem_strip_copy_rop, including the fact that it relies on being able to set the offset in get_bits calls when this is sometimes not possible. We therefore fix the code to manage offsets by explicitly updating them. Also, the raster used in mem_strip_copy_rop was incorrect - we use the correct one and get much better results. No cluster differences expected as the planar device is not tested. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12274 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-10The routines in gdevplib.c intended to map colors in cmyk form back to rgbRobin Watts1-138/+143
were incorrect. Fixed here. No differences expected as this files isn't linked in by default. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12273 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-10For PCL's benefit we change the display format to DISPLAY_BIGENDIAN -Henry Stiles1-6/+6
RGB instead of BGR. PCL raster operations will not work with the BGR color model. This does introduce byte shuffling, BGR is native, which might make the device a bit slower. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12272 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-10Remove the buffer blanking done in gximono.c. Previously removing this wouldRobin Watts1-6/+3
have caused indeterminisms. With the additional fix in here to limit offset_bits to dest_width, however, we should get stable results. This gives various differences in output (81 in pcl, presumably more in PDF and PS). Bmpcmp of the pcl ones shows them as all progressions. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12271 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-10Update the remaining PostScript files (mostly the PDF interpreter) to use ↵Ken Sharp5-19/+54
the new device parameters instead of explicitly checking for the device being named 'pdfwrite' or 'ps2write'. Some more modification is still required, but we're nearly there. We will continue to check the device names in gs_pdfwr.ps when setting up the default state for those specific devices. Although not strictly a Distiller device, ps2write declares itself to be 'IsDistiller'. This is because some PostScript test files were found to behave differently if the distillerparams operators were available, in particular files would be oriented differently if the device was deemed to be a Distiller. Expected Differences Bug690829 exhibits some differences in text with the ps2write device. After checking against the original, ps2write now produces output which (when rendered) more closely matches the rendered output of the original file. Also the output PostScript file is smaller, so this is a (surprising) progression. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12270 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-10Ignore null object when it is used instead of the gstate dictionary.Alex Cherepanov1-9/+13
Bug 692050. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12269 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-10Change all instances of true, false, and null to //true, //false, and //nullAlex Cherepanov46-722/+722
to avoid interferance from PS files that redefine them. Bug 692041. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12268 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-10Fix for bug 692038.Michael Vrhel8-13/+137
This fixes 3 issues when using a CIELAB based profile for the output device ICC profile. One was a problem when handling separation color spaces when they had the ALL entry and we were going to an additive device. AR does a 1-INK level for the device values and no color management. We were doing the same, but this approach will not work if our destination color space is CIELAB. Now if we are headed toward CIELAB we do the 1-INK to RGB and then transform to CIELAB. Another was that transparency blending should never be done in CIELAB or similar type color spaces. With transparency, the PDF14 device inherits the profile for the target device and if the transparency groups don't specify a color space we would end up blending in CIELAB. The solution was to detect this situation and use the defaultRGB profile for blending. Conversion to CIELAB occurs during the pdf14 put image operation. Finally, with shading in transparency, we need to make sure to pass along the transparency device through the shading parameters whenever we have a color mismatch between the pdf14 device and the target device so that the shading will occur in the proper color space. These changes are all related to a non-tested cluster case when we have -sOutputICCProfile=lab.icc git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12267 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-09Fixes bug #692037 and improves the several pages in PCL5C CET filesHenry Stiles1-0/+5
30-17.BIN and 30-18.BIN. The direction of characters was calculated incorrectly for bitmap fonts which are scaled in a different coordinate system. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12266 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-09Add gxht_thresh.{c,h} to Visual C project.Robin Watts1-0/+8
git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12265 a1074d23-0009-0410-80fe-cf8c14f379e6
2011-03-09Disable PACIFY_VALGRIND in gximono.c. This define is intended to enableRobin Watts1-14/+19
extra code that can be performed so as to ensure that valgrind doesn't report false positives. As such, disabling it should have no adverse effects. Unfortunately, it seems that in the portrait case, if we don't blank the threshold array before we run, we get diffs. I have therefore taken this memset out of the PACIFY_VALGRIND case and forced it to always happen. This probably points to a bug and should be investigated properly. No cluster differences expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@12264 a1074d23-0009-0410-80fe-cf8c14f379e6