summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Calling the gsapi polling function from the Macintosh gp_check_interruptsghostscript-8.15ghostscript-8.14ghostscript-8.13Ralph Giles2003-04-183-33/+87
| | | | | | | | | | function violates the layering of the interpreter over the graphics library. Therefore we isolate the offending code to a separate module 'macpoll.dev' in a fashion analogous to the mspoll feature dev available on the windows build. Enable this by default in the CodeWarrior build. Partial fix for Bug 686810. After a patch by Russell Lang. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3850 a1074d23-0009-0410-80fe-cf8c14f379e6
* Use different output file names for the Classic and Carbon MacOS shlib targets.Ralph Giles2003-04-181-11/+17
| | | | | | Closes bug 686818. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3849 a1074d23-0009-0410-80fe-cf8c14f379e6
* Complete the set of Adobe CMaps.Igor Melichev2003-04-186-0/+5587
| | | | git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3847 a1074d23-0009-0410-80fe-cf8c14f379e6
* Call the gsapi polling function from the Macintosh gp_check_interruptsRussell Lang2003-04-181-8/+20
| | | | | | | function. Partial fix for Bug 686810 "CHECK_INTERRUPTS should allow shorter worst-case abort". git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3846 a1074d23-0009-0410-80fe-cf8c14f379e6
* Call the gsapi polling function during the main interpreter loopRussell Lang2003-04-175-1/+14
| | | | | | | | | | | | | | | | | | timeslice code. This allows a client to abort the interpreter when running "{} loop". Fixes Bug 686810 "CHECK_INTERRUPTS should allow shorter worst-case abort". DETAILS: PostScript which executed an infinite loop could not be stopped by the gsapi client. The time slice code in the main interpreter loop is executed once for every 32767 passes through the interpreter loop. Within the time slice code we now call the polling function and if the return value is non-zero, we set code to gs_error_interrupt to cause the interpreter to exit. This was not a client bug (as far as I know). The original request was from Zoltan Biro. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3844 a1074d23-0009-0410-80fe-cf8c14f379e6
* Remove a C99 snprintf() call. In this case the length is limited by the ↵Ralph Giles2003-04-171-1/+1
| | | | | | format string. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3843 a1074d23-0009-0410-80fe-cf8c14f379e6
* Remove two non-library files from the jbig2 makefile.Ralph Giles2003-04-171-2/+0
| | | | git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3842 a1074d23-0009-0410-80fe-cf8c14f379e6
* Added documentation of UseWTS user parameter.Raph Levien2003-04-171-0/+25
| | | | git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3841 a1074d23-0009-0410-80fe-cf8c14f379e6
* Define HAVE_STDINT_H in stdpre.h on MacOS. Required for a clean compileRalph Giles2003-04-171-0/+9
| | | | | | | | | | | | | | | under CodeWarrior. DETAILS: The jbig2dec library and headers require some of the C99 types. We've made sure those are available, but the mechanism depended on either passing -DHAVE_STDINT_H on the commandline or windows-specific typedefs. Since there's no convenient way pass single defines through codewarrior that would be seen by both the jbig2dec and the gs sources, we add a platform-specific define to headers in each codebase. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3840 a1074d23-0009-0410-80fe-cf8c14f379e6
* Enable jbig2 support in the MacOS CodeWarrior build, and add the localRalph Giles2003-04-172-2/+3
| | | | | | library source to the search path. jbig2dec is now required for this build. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3839 a1074d23-0009-0410-80fe-cf8c14f379e6
* Protect some defines that conflict with constants in stdint.h.Ralph Giles2003-04-161-0/+4
| | | | git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3838 a1074d23-0009-0410-80fe-cf8c14f379e6
* Correct some typos.Ralph Giles2003-04-161-2/+2
| | | | git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3837 a1074d23-0009-0410-80fe-cf8c14f379e6
* Add a license paragraph for the Resource directory asserting the AFPL withRalph Giles2003-04-161-0/+6
| | | | | | an exception for the Adobe-owned CMap files. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3836 a1074d23-0009-0410-80fe-cf8c14f379e6
* Test the optimization compiler flag '-O2' before using it since some vendorRalph Giles2003-04-162-5/+16
| | | | | | | | | | | | compilers have different syntax. DETAILS: This is really just a quick fix; it doesn't check flags for the debug or profile builds. A full solution would also try known options based on the compiler being used. It's not fair to just disable optimization if -O2 doesn't work. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3833 a1074d23-0009-0410-80fe-cf8c14f379e6
* JBIG2 code in the interpreter and stream library requires an -I argumentRalph Giles2003-04-164-3/+8
| | | | | | to find the jbig2dec headers when compiling with local source. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3832 a1074d23-0009-0410-80fe-cf8c14f379e6
* Complete the set of Adobe CMaps.Igor Melichev2003-04-1635-0/+9812
| | | | git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3831 a1074d23-0009-0410-80fe-cf8c14f379e6
* Fix (pdfwrite) : Compress charproc streams.Igor Melichev2003-04-1511-108/+206
| | | | | | | | | | | | | | | | | | | | | DETAILS: This patch mixes 3 changes : 1. Applying a compression to vector charprocs. Bitmap charprocs are left uncompresed. The written PDF should have same contents as before. 2. A preparation to Type 1 pattern accumulation with implementing a pdf_substream_save stack. Moved accum_char_proc_* fields to there. This change should be equivalent. 3. Renamed cos_write_stream_from_pipeline to cos_stream_from_pipeline, because the old name appears confusable. A new function with the old name is defined for another purpose. No regression changes expected. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3830 a1074d23-0009-0410-80fe-cf8c14f379e6
* Add new jbig2dec makefile and supporting defines to remaining ↵Ralph Giles2003-04-1514-3/+82
| | | | | | platform-dependent makefiles. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3829 a1074d23-0009-0410-80fe-cf8c14f379e6
* Add support for compiling in libjbig2dec statically from source. This makefileRalph Giles2003-04-158-10/+208
| | | | | | is only good for v0.2. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3828 a1074d23-0009-0410-80fe-cf8c14f379e6
* Fix (pdfwrite) : Use cos_write_stream for charproc accumulation.Igor Melichev2003-04-148-23/+82
| | | | | | | | | | | | | | | | DETAILS: pdfwrite crashes with -r72 012-09.ps due to 2 nesting separates : one for charproc accumulator, and another one for graphic state object inside it. This problem does not happen with comparefiles with the default value of -r. Meanwhile the problem is harmful because it occasionally depends on CTM. Minor changes : - A misprint in "pdf_begin_char_proc_gerneric". - Removed some unused variables. - Inserted some necessary #include statements. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3827 a1074d23-0009-0410-80fe-cf8c14f379e6
* Fix (dropout prevention) : sfill was unintentionally slowed down.Igor Melichev2003-04-131-5/+4
| | | | | | | | | | | | | | | | | | | | DETAILS: In some cases the scanline algorithm appears to speed up the sfill in about 2 times. This patch enables the scanline algorithm when DROPOUT_PREVENTION is on, except for characters. It brings the shfill case closer to the old algorithm. This patch causes minor differences while filling a path, especially with shfill, but such differences should be small and almost unvisible. Minor change : The condition in gxfill.c line 2075 is changed to be closer to the old algorithm when filling non-characters, because dropout prewvention is not neccessary for this case. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3824 a1074d23-0009-0410-80fe-cf8c14f379e6
* Add Resource directory to the lib path configured by the Windows installer.Russell Lang2003-04-121-2/+6
| | | | git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3823 a1074d23-0009-0410-80fe-cf8c14f379e6
* Create more specific DEBUG switches in the interpreter initializationRay Johnston2003-04-1221-162/+214
| | | | | | | modules to allow debugging to only include information of interest. If -dDEBUG is set, then set all of the specific switches. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3822 a1074d23-0009-0410-80fe-cf8c14f379e6
* Add the new Resource directory tree to the unix install target.Ralph Giles2003-04-121-2/+17
| | | | | | | | | | | DETAILS: We have a hard-wired list of directories to install under Resource. All the files in these directories will be non-recursively copied to the install directory. It is therefore only necessary to update RES_CATEGORIES when a new category is added but not for individual files. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3821 a1074d23-0009-0410-80fe-cf8c14f379e6
* Add Resource directory to Windows installer.Russell Lang2003-04-123-5/+8
| | | | | | | Update copyright dates. Exclude file attributes (ACLs) from the zip archives. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3816 a1074d23-0009-0410-80fe-cf8c14f379e6
* Correctly dereference the arguments to the sort compare function used in theRalph Giles2003-04-111-1/+1
| | | | | | device listing. This was incorrect in the previous commit. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3815 a1074d23-0009-0410-80fe-cf8c14f379e6
* Fix : Increasing the text alpha bits thresholds.Igor Melichev2003-04-111-4/+4
| | | | | | | | | | Bug 686775 "Large text is not anti-aliased". DETAILS: We can't set infinite thresholds due to RAM consumption in character cache. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3814 a1074d23-0009-0410-80fe-cf8c14f379e6
* Fix (pdfwrite) : Generate pseudo-random font names for subset fontsIgor Melichev2003-04-117-32/+81
| | | | | | | | | | | | | | | | | from the glyph usage array. Bug 686807 A "subset fonts" error in Adobe Acrobat from files made by GS8.00 DETAILS : Since the revision 1.9 of gdevpdtb.c (Sun Sep 8 20:20:12 2002 UTC) subset font names were deterministic to simplify the debugging. The names were derived from resource IDs, and could cause a conflict when merging documents. This patch generates different font names hashing the glyph usage bitmask. Now the conflict can happen with a very small probablility, when different subsets give same hash value. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3813 a1074d23-0009-0410-80fe-cf8c14f379e6
* Add the new default resource directory to the autoconf makefile.Ralph Giles2003-04-111-1/+1
| | | | git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3812 a1074d23-0009-0410-80fe-cf8c14f379e6
* Fix : Remove an unintentional rudiment of a debug printing.Igor Melichev2003-04-111-1/+0
| | | | git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3811 a1074d23-0009-0410-80fe-cf8c14f379e6
* Turn on the static resources with COMPILE_INIT=1.Igor Melichev2003-04-111-104/+104
| | | | | | | | DETAILS: The OpenVMS case is not implemented in geninit.c . git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3810 a1074d23-0009-0410-80fe-cf8c14f379e6
* Switching to the new logics of resource file location.Igor Melichev2003-04-1115-38/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | THIS IS INCOMPATIBLE CHANGE, because the default resource path is now different : resource files are moved to gs/Resource . See gs/doc/Use.htm#Finding_files and gs/doc/Use.htm#Resource_related_parameters. DETAILS: This patch does not include necessary changes to Ghostscript installer. The main code change in one to gp.h . Rudiments of old code in gs/src and gs/lib are marked with NEW_COMBINE_PATH. They to be removed after beta-testing. Change to makefiles provide extended default values for file search paths, which are platform dependent. For convenience, here we summarize all related issues, which were mentioned in previous patches : 1. The search method with multiple resource directories appears not fully conforming to PLRM. We cannot ever call ResourceFileName while executing findresource or resourcestatus, because per PLRM it always returns a single path. Therefore we implement an extended search method in findresource, resourcestatus and resourceforall, which first calls ResourceFileName and checks whether the returned path points to an existing file. If yes, the file is used, othervise we search all directories specified in LIB_PATH. With a single resource directory it appears equivalent to Adobe. THIS IS INCOMPATIBLE CHANGE. 2. ResourceFileName may be used for obtaining a path where a resource file to be installed. In this case Ghostscript to be invoked with -sGenericResourceDir=path, specifying an absolute path. The default value for GenericResourceDir is a relative path. Therefore a default invocation with a Postscript installer will install resources into gs/Resource. THIS IS INCOMPATIBLE CHANGE. 3. We do not distinguish lib and Resource directories. There is no file name conflicts because lib does not contain subdirectories, but Resource always store files in subdirectories. 4. We implement a new flag in gs_context_state, which informs lib_file_open whether it is invoked with a file specified in a command line argument. Doing so because command line argument files don't need to check permissions, and they are executed with a special PS operator .runfile . We cannot use a .runfile argument for passing this information, because it would be a security hole due to .runfile is available for documents and cannot be hidden. 5. We still have a security hole while loading resources from gs_init.ps . Both the old and the new code load some resources (such as CIDInit ProcSet) before entering the SAFER mode. Therefore it is a way for Postscript viruses to migrate. To be fixed later. 6. Default values for GenericResourceDir and FontResourceDir are platform dependent. (The old code always use Unix notation - a bug). 7. Default value for GenericResourcePathSep is platform dependent. The value is used before non-directory items only. (The old code always use Unix notation - a bug). (The old code used the value before directory items - a bug on OpenVMS). 8. If a path starts with a number of parent references, a template with same number of parent references must be added to permission list to allow the access in SAFER mode. The template (*) allows access to any file. THIS IS INCOMPATIBLE CHANGE, because the old code ever rejects parent directories. 9. GenericResourceDir and FontResourceDir are not being added to permission list while .locksafe. Instead that, we generate (*/*) templates with all LIBPATH items. THIS IS INCOMPATIBLE CHANGE, but for non-exotic cases (such as "(./Resource/CMap/H) .libfile" in a document) it should not be visible. A. Scratch files with a non-absolute prefix always open in a scratch directory. The old code can open them in current and parent directories if an user modified a default prefix in C code. THIS IS INCOMPATIBLE CHANGE for users who had modified a scratch file prefix in C code. Permission for scratch directory is not checked as well as in old code. B. The operator .filenamedirseparator is removed, because it cannot work properly on OpenVMS. On OpenVMS it needs both prefix and trailer to determine a correct separator. We removed it because the new logics never needs it. C. The operator .pathstring_not_bare is removed, because .file_name_combine performs it's job better. D. The functions gp_pathstring_not_bare, gp_file_name_references_parent, char *gp_file_name_concat_string are removed. E. New operators added to maintain the new logics : <string> <string> <bool> .file_name_combine <string> true <string> <string> <bool> .file_name_combine <string> <string> false Combine a file name with a prefix. The first argument is a prefix, the second is a file name. Internal syntax of arguments and result is platform dependent. The combination is being reduced to a shortest equivalent, but if it starts with cwd reference, the starting cwd reference persists. If the <bool> argument is true, it considered to use the "no sibling" mode. It prevents reduction of (x/../y) to (y) for any x != y. With false such reduction is allowed. The <bool> argument appears a rudinemt from a dead branch. The new code always sets it to false. On success, the result is a combined, reduced path and false. On failure, the argument strings left on operand stack, followed with false. - .file_name_separator <string> Returns a readonly string, which represents a separator which is used in file names between directory item and file item. Used for making the default value of GenericResourcePathSep. - .file_name_directory_separator <string> Returns a readonly string, which represents a separator which is used in file names between two directory items. Used for making the default value of GenericResourceDir and FontResourceDir. - .file_name_current <string> Returns a readonly string, which represents a reference to current working directory. Used for making the default value of GenericResourceDir and FontResourceDir. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3809 a1074d23-0009-0410-80fe-cf8c14f379e6
* Initial commit for a minimal set of resources for CID font emulation, FAPI ↵Igor Melichev2003-04-1114-0/+55308
| | | | | | and pdfwrite . git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3808 a1074d23-0009-0410-80fe-cf8c14f379e6
* Removing it because it appears in a wrong place of the directory tree.Igor Melichev2003-04-111-2910/+0
| | | | git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3807 a1074d23-0009-0410-80fe-cf8c14f379e6
* Initial commit for a minimal set of resources for CID font emulation, FAPI ↵Igor Melichev2003-04-111-0/+2910
| | | | | | and pdfwrite . git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3806 a1074d23-0009-0410-80fe-cf8c14f379e6
* Removing it because it appears in a wrong place of the directory tree.Igor Melichev2003-04-111-2910/+0
| | | | git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3805 a1074d23-0009-0410-80fe-cf8c14f379e6
* Initial commit for a minimal set of resources for CID font emulation, FAPI ↵Igor Melichev2003-04-111-0/+2910
| | | | | | and pdfwrite . git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3804 a1074d23-0009-0410-80fe-cf8c14f379e6
* MSVC (at least) requires void* be cast. Also remove a spurious comment.Ralph Giles2003-04-101-2/+1
| | | | git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3803 a1074d23-0009-0410-80fe-cf8c14f379e6
* Sort the list of devices in the output of 'gs -h' so they're easier to read.Ralph Giles2003-04-101-10/+45
| | | | | | | Also list the default device separately as it's no longer first. Based on a patch from Nelson Beebe. Closes bug 416746. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3802 a1074d23-0009-0410-80fe-cf8c14f379e6
* Tolerate %%EOF that doesn't have any line-end characters before the endRay Johnston2003-04-101-2/+2
| | | | | | | | | of the file. No other applications (AR5, xpdf, pdf-tools) complain about this, so now we also allow this variation on the %%EOF line. Fixes bug: 686793 git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3801 a1074d23-0009-0410-80fe-cf8c14f379e6
* Use fstat() function to determine whether the file is seekable.Alex Cherepanov2003-04-104-2/+22
| | | | | | | | | | | | | | | | | This should work on all supported platforms and seems to be the only way to get the file type using a MSVC CRTL function. Bug #686773 DETAILS: Windows API documentation seems to imply undefined results when seeking of retrieving file position of a special file. MSDN documentation requires programmers to check file type using GetFileType() function before seeking. MSVC 6 CRTL doesn't check file type before calling the corresponding Windows API functions. fstat() is the only function in MSVC 6 CRTL that calls GetFileType(). S_ISREG() is a POSIX macro that check whether the file is ordinary. It can be easily emulated if missing. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3800 a1074d23-0009-0410-80fe-cf8c14f379e6
* Use standard sRGB CRD. Fix color cast in the light areas causedAlex Cherepanov2003-04-101-20/+25
| | | | | | | by chromatic adaptation done in the wrong (RGB) color space. Bug #650802 git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3799 a1074d23-0009-0410-80fe-cf8c14f379e6
* Fix (pdfwrite) : Generate a page when input file has no pages.Igor Melichev2003-04-101-2/+6
| | | | | | Bug 686792 "Empty PS file generates produces invalid PDF". git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3798 a1074d23-0009-0410-80fe-cf8c14f379e6
* Fix : Ignore a missed CMapType, because Adobe does so.Igor Melichev2003-04-101-1/+1
| | | | | | Bug 686800 "Error converting PostScript file with vertical Japanese text". git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3797 a1074d23-0009-0410-80fe-cf8c14f379e6
* Fix (pdfwrite) : The monitoring of fill overprint parameter was not ↵Igor Melichev2003-04-101-2/+8
| | | | | | | | conforming to PDF 1.3, 1.4 spec. Bug 686802 "Stroke Overprint lost making PDF". git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3796 a1074d23-0009-0410-80fe-cf8c14f379e6
* Update the release instructions to use cvs2cl and the new split_changelog.Ralph Giles2003-04-093-156/+7488
| | | | | | | Also include Changes and Details files for differences up to this point as an example of the new format. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3795 a1074d23-0009-0410-80fe-cf8c14f379e6
* Add news script to generate split abbreviated/detailed changelogs in the newRalph Giles2003-04-091-0/+127
| | | | | | | | | | | | | | | | | | | | | | | | | | format. Accepts xml input from the cvs2cl perl script. DETAILS: After the 8.00 release we switched to a new format for Changes.htm and the History files, based on the more traditional Changelog format instead of grouping commits by section, which often resulted in duplicate posts. At the same time we began a convention of including any notes too extensive for such a listing below a 'DETAILS:' separator, with the idea that we'd create two changelogs, with hyperlinks between so detailed information was still available even in the new easier to browse format. The method we've adopted uses the cvs2cl perl script, available from http://www.red-bean.com/cvs2cl/ to parse the output of 'cvs log' and generate an xml file containing the merged entries. This script is more robust than our own cvs2hist. The split_changelog.py script is then run to convert the xml changelog to the two sizes of linked html changelogs. split_changelog isn't very bright about constructing links, so it should be run from inside the doc directory for now. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3794 a1074d23-0009-0410-80fe-cf8c14f379e6
* Fix : Ignore a small noise skewing in the character caching criterion.Igor Melichev2003-04-091-6/+18
| | | | git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3793 a1074d23-0009-0410-80fe-cf8c14f379e6
* Fix (type1 hinter) : The overshoot suppressing code was wrong.Igor Melichev2003-04-091-2/+0
| | | | | | | | | | | | | Bug 686812 "Incorrect font rendering for Zapfino ampersand". DETAILS : It always restricted overshoots with 1 pixel due to a stupid error in code. This patch causes differences in almost tests with 300 dpi, and with 3 tests at 72 dpi. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3792 a1074d23-0009-0410-80fe-cf8c14f379e6
* The previous change removing the spotrgb device missed src/Makefile.in.Dan Coby2003-04-081-1/+1
| | | | | | This change corrects that omission. git-svn-id: http://svn.ghostscript.com/ghostscript/trunk@3791 a1074d23-0009-0410-80fe-cf8c14f379e6