Compare commits

...

429 Commits
f10 ... f24

Author SHA1 Message Date
David Kaspar [Dee'Kej] b63fb0722a Added security patch for CVE-2017-7975
Resolves: #1443940
2017-05-03 14:29:24 +02:00
David Kaspar [Dee'Kej] d520456782 Added security patch for CVE-2017-8291
Resolves: #1446063
2017-04-28 14:59:46 +02:00
David Kaspar [Dee'Kej] a3eaf05602 Added security patch for CVE-2017-5951
Resolves: #1441572
2017-04-28 14:59:41 +02:00
David Kaspar [Dee'Kej] eea5791154 Added security patch for CVE-2016-10220
Resolves: #1441571
2017-04-28 14:59:34 +02:00
David Kaspar [Dee'Kej] 0b2235a081 Added security patch for CVE-2016-10219
Resolves: #1441569
2017-04-28 14:59:28 +02:00
David Kaspar [Dee'Kej] 413e7350b9 Added security patch for CVE-2016-10218
Resolves: #1441568
2017-04-28 14:59:20 +02:00
David Kaspar [Dee'Kej] 8beaf00295 Added security patch for CVE-2016-10217
Resolves: #1441564
2017-04-28 14:58:34 +02:00
David Kaspar [Dee'Kej] 7e75fe4bc0 Added security patch for CVE-2017-7207
Resolves: #1434497
2017-04-06 18:27:40 +02:00
David Kaspar [Dee'Kej] d24d06ee44 Added security patch for CVE-2016-9601 (bug #1410021) 2017-01-25 10:49:59 +01:00
David Kaspar [Dee'Kej] 254a99729c ghostscript-9.20-remove-and-reimplement-ConvertUTF.patch added
Resolves: #1404933
2017-01-24 18:39:21 +01:00
David Kaspar [Dee'Kej] f2fcc98430 Handle GlyphDirectory as an array
Upstream BZ: http://bugs.ghostscript.com/show_bug.cgi?id=697286
2016-11-03 16:58:02 +01:00
David Kaspar [Dee'Kej] a890cdf30f Added security patch for CVE-2016-7977 (bug #1380415) 2016-11-01 15:39:41 +01:00
David Kaspar [Dee'Kej] 716ba11068 Added security patch for CVE-2016-8602 (bug #1383940) 2016-11-01 14:25:58 +01:00
David Kaspar [Dee'Kej] 040b22b22c Added 3 security fixes for:
- CVE-2016-7979 (bug #1382305)
  - CVE-2016-7976 (bug #1382294)
  - CVE-2016-7978 (bug #1382300)
2016-10-07 15:02:19 +02:00
David Kaspar [Dee'Kej] 25f6510de5 rebase to 'ghostscript-9.20'
Rebase notes:
   - OpenJPEG support has been re-enabled
   - ijs-config custom tool removed (pkg-config is used by default now)
   - no API/ABI changes according to upstream
   - some patches updated to 'git format-patch' format and renamed
   - squashed 'ghostscript-Fontmap.local.patch' into
              'ghostscript-9.20-runlibfileifexists.patch'
   - rest of patches deleted (irrelevant for current version), mostly
     because upstream has fixed those issues in some way
2016-10-07 14:20:56 +02:00
David Kaspar [Dee'Kej] e40ca66c63 ghostscript-bz1380416.patch added
Security fix for BZ #1380416.
2016-10-04 10:40:24 +02:00
David Kaspar [Dee'Kej] 8cbe74c4f1 ghostscript-system-openjpeg2.patch removed
* THIS COMMIT WILL DISABLE SUPPORT FOR OpenJPEG *

  New version of OpenJPEG library causes the build to fail. We need to
  build it in order to fix a security issue (see later commits).

  This is only a temporary solution, to fix the security issue. Then we
  will have more time on fixing the issue with OpenJPEG.
2016-10-04 10:38:45 +02:00
David Kaspar [Dee'Kej] a607b286f4 sources: acro5-cmaps-2001.tar.gz and adobe-cmaps-200406.tar.gz removed
Ghostscript no longer uses these archives for building, it includes
  its own CMaps. See RHBZ #190463 for more info.

  Commit d2ff86e758 removed those files
  from specfile, but not from sources. Therefore they were still
  unnecessarily downloaded everytime when someone ran 'fedpkg prep'.
2016-08-09 16:29:41 +02:00
Dennis Gilmore 1eaa0ecc41 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild 2016-02-03 21:51:22 +00:00
Dennis Gilmore c5fb0925b1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild 2015-06-17 08:09:15 +00:00
Tim Waugh 4a858d4950 Merge branch 'f22' 2015-03-31 11:00:13 +01:00
Tim Waugh 197a49ef28 Use old names for urw-fonts (bug #1207577).
Resolves: rhbz#1207577
2015-03-31 10:59:56 +01:00
Tim Waugh aeb86acbcc Merge branch 'f22' 2015-03-31 09:43:10 +01:00
Tim Waugh 0c733b3f70 9.16.
(cherry picked from commit 42255631de)
2015-03-30 18:10:41 +01:00
Tim Waugh 42255631de 9.16. 2015-03-30 18:08:35 +01:00
Till Maas b5bc79e0ac Rebuilt for Fedora 23 Change
https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code
2015-02-21 21:29:06 +01:00
Tim Waugh e98726d075 Don't ship X11.so in both the main package and the x11 sub-package. 2014-12-19 16:11:04 +00:00
Rex Dieter 3ff19233a7 fix %_isa macro usage 2014-12-19 08:12:47 -06:00
Tim Waugh 4a9a41002c New ghostscript-x11 package for X11 driver (bug #148939).
- Ghostscript not requiring X11 is now in ghostscript-core.
- The 'ghostscript' package requires both of these.

Resolves: rhbz#148939
2014-12-19 10:03:12 +00:00
Tim Waugh 956b783e71 Merge branch 'f21' 2014-10-07 15:36:53 +01:00
Tim Waugh c46c12a72c Merge branch 'f20' into f21 2014-10-07 15:13:35 +01:00
Tim Waugh eff4bacea9 Avoid shipping ramfs source as its license is unclear (bug #1149617).
Similarly with some documentation and example code.

Resolves: rhbz#1149617
2014-10-07 14:22:44 +01:00
Tim Waugh 1074f516e4 generate-tarball.sh: quote environment variables. 2014-10-07 11:45:41 +01:00
Tim Waugh f7556c38cc Fixed typo in last patch. 2014-10-07 11:43:26 +01:00
Tim Waugh 4f91b61535 Use system openjpeg2 library so we can decode JPX (upstream bug #695557). 2014-10-03 11:40:59 +01:00
Tim Waugh 856d045a27 9.15.
No longer need iccprofiles-initdir, gs694154, crash, sys-zlib, or
trio-g patches.

Resolves: rhbz#1145482
2014-09-23 10:20:22 +01:00
Tim Waugh 7a4fe39464 No need to apply patch for already-applied gdevcups-debug-uninit. 2014-09-23 10:19:17 +01:00
Peter Robinson 382fde0baf - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild 2014-08-16 16:19:09 +00:00
Tim Waugh b86ef46c8d Merge branch 'f20' into f21 2014-08-15 10:58:48 +01:00
Tim Waugh 739f5614e6 Fix double-to-string conversion on e.g. ppc64 (bug #1014772).
Resolves: rhbz#1014772
2014-08-15 10:57:29 +01:00
Dennis Gilmore 66e7ae905d - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild 2014-06-07 10:35:55 -05:00
Tim Waugh feb0824213 Merge branch 'f20' 2014-06-04 11:15:15 +01:00
Tim Waugh 8c47682ea5 Merge branch 'f19' into f20 2014-06-04 11:15:00 +01:00
Tim Waugh 51ebf65bc1 Applied patch from upstream to fix memory handling issue (bug #1087071).
Resolves: rhbz#1087071
2014-06-04 11:14:10 +01:00
Ralf Corsépius d84f0e02dd Add %{_datadir}/ghostscript/%{gs_dot_ver}/Resource/IdiomSet
(RHBZ #1100338).
2014-06-03 07:18:02 +02:00
Ralf Corsépius 7a5a4a21d1 Add %{_datadir}/ghostscript/%{gs_dot_ver}/Resource/IdiomSet
(RHBZ #1100338).
2014-06-03 06:56:08 +02:00
Ralf Corsépius 50b6192323 Add %{_datadir}/ghostscript/%{gs_dot_ver}/Resource/IdiomSet
(RHBZ #1100338).
2014-06-03 06:21:00 +02:00
Tim Waugh 5f432cb7e0 9.14. 2014-03-27 11:16:17 +00:00
Tim Waugh c7d686002c 9.12 (bug #1080814).
- Fix build when using system zlib.
Resolves: rhbz#1080814
2014-03-26 12:21:25 +00:00
Tim Waugh 68499706a5 Use upstream patch to fix duplex for some devices (bug #1068896).
Resolves: rhbz#1068896
2014-02-27 16:16:13 +00:00
Tim Waugh 7237d438e3 Use upstream patch to fix gs segfault (bug #1039718).
Resolves: rhbz#1039718
2013-12-10 16:27:31 +00:00
Tim Waugh 80985fa14c Use upstream patch to fix gs segfault (bug #1036428).
Resolves: rhbz#1036428
2013-12-10 16:12:20 +00:00
Tim Waugh eb126a7860 Removed unneeded file from sources. 2013-12-10 15:39:37 +00:00
Tim Waugh 4aeef6dc39 Merge branch 'f19' into f20 2013-09-25 17:04:15 +01:00
Tim Waugh 24dae22c79 Merge branch 'f18' into f19 2013-09-25 16:30:09 +01:00
Tim Waugh 9e5f137b6a Regenerate tarball (bug #1000387).
Resolves: rhbz#1000387
2013-09-25 15:57:11 +01:00
Tim Waugh 2f99dfaf61 9.10. 2013-09-09 11:33:39 +01:00
Tim Waugh ffc3312309 Merge branch 'f19' into f20 2013-08-28 14:02:21 +01:00
Tim Waugh c542db81c4 Merge branch 'f18' into f19 2013-08-28 13:57:47 +01:00
Tim Waugh 4489aac000 Remove jpegxr to ensure it isn't built (bug #1000387).
Resolves: rhbz#1000387
2013-08-28 13:21:40 +01:00
Tim Waugh 4300802b69 Merge branch 'f19' into f20 2013-08-22 16:42:52 +01:00
Tim Waugh 836e3bbded Fixed character set conversion issue in pdfwrite (bug #999927).
Resolves: rhbz#999927
2013-08-22 15:37:20 +01:00
Tim Waugh d9b0f026d4 9.09. 2013-08-22 12:16:59 +01:00
Tim Waugh e9d3d79e4f Tweak filter costs for gstoraster (part of bug #998977).
Resolves: rhbz#998977
2013-08-21 12:54:19 +01:00
Tim Waugh 5cfddfeb15 9.09rc1. 2013-08-17 19:01:53 +01:00
Tim Waugh f57ad54bb1 9.08. 2013-08-15 10:20:27 +01:00
Tim Waugh 455c9842a6 Uploaded 9.08rc1 tarball. 2013-08-13 12:30:17 +01:00
Tim Waugh 5e3e208813 9.08rc1. CUPS filters moved to the cups-filters package. 2013-08-13 11:35:02 +01:00
Dennis Gilmore 08e89d9f23 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild 2013-08-03 09:15:41 -05:00
Tim Waugh c4ba7ef379 Remove bundled (and unused) lcms source. 2013-07-18 15:13:42 +01:00
Tim Waugh 488986c926 Merge branch 'f19' 2013-07-18 12:57:15 +01:00
Tim Waugh f50db1b29c Fixed license tag (AGPLv3+). 2013-07-18 12:57:10 +01:00
Tim Waugh dc0fc10e7e Merge branch 'f19' 2013-07-17 16:19:31 +01:00
Tim Waugh 999742fb01 Added in missing part of gs_sprintf backport (bug #979681).
Resolves: rhbz#979681
2013-07-17 16:17:49 +01:00
Tim Waugh 57b8712a83 Test build for debugging bug #979681.
WRF_wfloat() now aborts if the buffer would have been truncated.
2013-07-09 11:47:46 +01:00
Tim Waugh d4cc58dc0f Upstream patch from bug #693921 to avoid zfapi crash (bug #969785).
Resolves: rhbz#969785
2013-07-08 12:30:03 +01:00
Tim Waugh b364eac6bc Use correct colord device ID in gstoraster. 2013-07-01 17:22:34 +01:00
Tim Waugh 31ae65acee Use more caution when converting floats to strings (bug #980085).
Resolves: rhbz#980085
2013-07-01 13:06:53 +01:00
Tim Waugh a84c27abc6 Merge branch 'f18' into f19 2013-06-20 09:57:57 +01:00
Tim Waugh 41ef5a5180 Upstream patch from bug #690692 to handle strange fonts (bug #969660).
Resolves: rhbz#969660
2013-06-20 09:56:00 +01:00
Tim Waugh 383c9a87a7 Merge branch 'f18' into f19 2013-06-14 12:38:51 +01:00
Tim Waugh 0fae297398 Remove pdfopt man pages which were mistakenly left in (bug #963882). 2013-05-17 15:47:35 +01:00
Tim Waugh bbcf3c6fcf Upstream patch to increase max object size to 16M (bug #880375). 2013-05-16 17:36:13 +01:00
Tim Waugh 98998b885f Merge branch 'f18' into f19 2013-05-16 09:31:25 +01:00
Tim Waugh 9c8808ccb1 Upstream patch to fix pdfwrite segfault (bug #962120). 2013-05-16 09:29:40 +01:00
Tim Waugh a0426f4076 Back-ported locale fix (bug #961149). 2013-05-09 17:26:00 +01:00
Tim Waugh fcd14f5464 Renumbered patches. 2013-05-09 16:13:26 +01:00
Tim Waugh 20f8834834 Merge branch 'f18' into f19 2013-04-25 16:50:28 +01:00
Tim Waugh 70ec04d0f5 Unowned directories (bug #902525). 2013-04-25 16:49:08 +01:00
Tim Waugh 909a3d934a Rebuilt. 2013-04-08 14:29:58 +01:00
Tim Waugh 1cb04289f7 Include correct tarball. 2013-04-08 14:26:53 +01:00
Tim Waugh b4ed15bc8b 9.07.
Resolves: rhbz#911517
2013-03-08 12:42:35 +00:00
Dennis Gilmore 982e6b6614 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild 2013-02-13 17:24:37 -06:00
Adam Tkac 747dde6f3c Rebuild due to "jpeg8-ABI" feature drop
Signed-off-by: Adam Tkac <atkac@redhat.com>
2013-01-18 18:04:09 +01:00
Tim Waugh efbc16ceea Updated build requirement from gtk2-devel to gtk3-devel (bug #884483).
Now gsx gets built using the correct loader.
Resolves: rhbz#884483
2013-01-04 09:45:09 +00:00
Tim Waugh 0ef006c94c Updated build requirement from gtk2-devel to gtk3-devel (bug #884483).
Now gsx gets built using the correct loader.
Resolves: rhbz#884483
2013-01-04 09:27:58 +00:00
Adam Tkac cfc0ec50e1 rebuild against new libjpeg
Signed-off-by: Adam Tkac <vonsch@gmail.com>
2012-12-21 16:32:06 +01:00
Tim Waugh a8b1f7b7fc Remove cups/libs to avoid bundling, although it isn't built in any case. 2012-09-27 17:21:37 +01:00
Tim Waugh 8b876747e4 Merge branch 'f18' 2012-09-11 12:57:24 +01:00
Tim Waugh b35e0e64c9 Merge branch 'f17' into f18 2012-09-11 12:57:14 +01:00
Tim Waugh cb6524b50f Rebuilt. This package fixes CVE-2012-4405 (bug #856060).
Resolves: rhbz#856060
2012-09-11 12:56:02 +01:00
Tim Waugh 9851ff8c03 Merge branch 'f16' into f17 2012-09-11 12:23:53 +01:00
Tim Waugh 6d215360a2 Removed more bundled packages (bug #816747). In particular, icclib is no longer bundled (bug #856060, CVE-2012-4405). 2012-09-11 11:08:19 +01:00
Tim Waugh 8152b01886 Fixed encoding of German ps2pdf man page (bug #853764).
Resolves: rhbz#853764
2012-09-04 10:41:25 +01:00
Tim Waugh 068e7291ae 9.06. 2012-08-09 14:30:22 +01:00
Dennis Gilmore 64c688ea43 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild 2012-07-19 01:29:57 -05:00
Tim Waugh e6211e7d49 Ship pkg-config file for ijs (bug #840830). 2012-07-17 14:21:14 +01:00
Tim Waugh 49a7508642 Removed more bundled packages (bug #816747). 2012-04-30 16:25:00 +01:00
Tim Waugh 03a292cd62 Fixed missing error check when setting ICC profile. 2012-04-30 16:24:07 +01:00
Jon Ciesla a317f6b732 Encoding fix. 2012-04-26 11:46:56 -05:00
Tim Waugh a7538063e5 Avoid mixed tabs and spaces in spec file. 2012-02-09 15:52:06 +00:00
Tim Waugh 133be3feed 9.05. 2012-02-09 12:51:21 +00:00
Tim Waugh e7cddeec9c Merge branch 'f16' 2012-01-06 14:43:13 +00:00
Tim Waugh 04f1d88ab0 Use %_cups_serverbin macro. 2012-01-06 14:41:53 +00:00
Tim Waugh ead0e99b22 Get the year right. 2012-01-06 13:05:49 +00:00
Tim Waugh cab932c03b Rebuilt for GCC 4.7. 2012-01-06 13:05:19 +00:00
Tim Waugh 95acfdb02b Applied fix for type 1 font copying code SEAC scanner (bug #728710). 2011-11-08 09:31:47 +00:00
Tim Waugh 2998f8d822 Rebuilt for new libpng. 2011-11-07 16:22:23 +00:00
Tim Waugh 405d207f89 Applied upstream fix for skipping "cached" outline glyphs (bug #742349). 2011-11-01 13:26:38 +00:00
Tim Waugh 54422c3b6d Fixed typo (EXTRAFLAGS -> EXTRACFLAGS). 2011-09-02 12:22:13 +01:00
Tim Waugh ea33f65ef3 Updated upstream fix for gdevcups RGBW handling (Ghostscript bug #691922). 2011-08-22 10:56:09 +01:00
Tim Waugh 41ebc2cdb2 Applied upstream fix for gdevcups handling of RGBW (Ghostscript bug #691922). 2011-08-16 14:49:58 +01:00
Tim Waugh 29821914dd 9.04. 2011-08-09 17:39:01 +01:00
Tim Waugh 9049c1bb30 No longer need jbig2-image-refcount patch. 2011-08-01 15:22:47 +01:00
Tim Waugh 55bdfab05e Fixed error reporting in the gstoraster filter. 2011-08-01 15:13:52 +01:00
Tim Waugh 2fe3729be3 colord is optional (bug #706619). 2011-05-25 15:07:09 +01:00
Tim Waugh f162a59f0f Prevent segfault when running gstoraster outside CUPS. 2011-04-12 11:13:02 +01:00
Tim Waugh 9aeffaf6ca Remove bundled expat directory. Not used, but this makes it
clearer.
2011-04-07 13:07:59 +01:00
Tim Waugh a65b257eae pxl: match landscape page sizes (bug #692165). 2011-04-06 16:43:40 +01:00
Tim Waugh 2ac3edf665 Fixed source URL. 2011-04-04 15:02:36 +01:00
Tim Waugh 8ffc6df09a 9.02. 2011-04-04 13:22:24 +01:00
Tim Waugh 562801bfb7 colord support: prefix printer name with "cups-" to get device ID. 2011-03-10 14:41:29 +00:00
Richard Hughes 63ba0ce8b3 Backport a patch from svn trunk to enable colord support. 2011-03-08 11:29:45 +00:00
Tim Waugh 1a1240ee01 9.01. 2011-02-10 10:32:12 +00:00
Dennis Gilmore a8e0cd1845 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild 2011-02-08 19:47:33 -06:00
Tim Waugh c3040aac84 Applied fix for upstream bug #691920. 2011-02-02 13:21:55 +00:00
Tim Waugh 79fc258206 Merge branch 'f14' 2011-02-01 11:58:37 +00:00
Tim Waugh c2b12d3ce8 Merge branch 'f13' into f14 2011-02-01 11:54:33 +00:00
Tim Waugh 9490e69583 Don't ship backup files for SEARCH_HERE_FIRST patch. 2011-02-01 11:48:52 +00:00
Tim Waugh 135b241fd4 Use poppler-data for CMaps (bug #630632). 2011-01-28 16:41:01 +00:00
Tim Waugh 12643a2fd3 Fixed macro in comment, include full source URL (rpmlint fixes). 2011-01-17 16:28:27 +00:00
Tim Waugh 2ef2200368 Avoid symbol clash with scan_token (bug #590914). 2011-01-14 17:21:20 +00:00
Tim Waugh 8f7093b325 Replaced width-and-height patch with the one actually used upstream. 2011-01-10 16:54:20 +00:00
Tim Waugh 246996011c Applied upstream ICC fix (bug #655449). 2011-01-07 13:11:15 +00:00
Tim Waugh eefd1c3191 gdevcups: use correct width and height values when allocating memory (upstream bug 691733). 2011-01-07 13:11:05 +00:00
Tim Waugh 6f55838ebd Merge branch 'f14' 2011-01-07 11:48:14 +00:00
Tim Waugh 97cc1c6744 Merge branch 'f13' into f14 2011-01-07 11:46:36 +00:00
Tim Waugh 23d38d6e8d Fixed more summaries ending with ".". 2010-11-26 09:12:37 +00:00
Tim Waugh e63809fac7 Merge branch 'f14' 2010-11-25 17:20:25 +00:00
Tim Waugh 3c5a2bb8dc Merge branch 'f13' into f14 2010-11-25 17:18:46 +00:00
Tim Waugh 59b553b156 Reverted gdevcups-segfaults patch from bug #639593 (bug #655403). 2010-11-25 17:16:45 +00:00
Tim Waugh b161816eee Merge branch 'f14' 2010-10-21 14:17:03 +01:00
Tim Waugh d3ec0a6a55 Merge branch 'f13' into f14 2010-10-21 14:16:30 +01:00
Tim Waugh c68619eeb3 Merge branch 'f12' into f13 2010-10-21 14:16:04 +01:00
Tim Waugh d61c474922 Own more directories (bug #645075). 2010-10-21 14:15:11 +01:00
Tim Waugh 218fb198bb Merge branch 'f14' 2010-10-14 17:48:00 +01:00
Tim Waugh 0c64c5e544 Merge branch 'f13' into f14 2010-10-14 17:23:39 +01:00
Tim Waugh 213d41aedc Apply some fixes from upstream to avoid gdevcups segfaults (bug #639593). 2010-10-14 17:07:59 +01:00
Tim Waugh f9f0f1a8e1 gdevcups: don't use uninitialized variables in debugging output (Ghostscript bug #691683). 2010-10-14 15:21:08 +01:00
Tim Waugh d315dcd79a Merge branch 'f14' 2010-10-01 17:26:37 +01:00
Tim Waugh 1e7576b8e9 Merge branch 'f13' into f14 2010-10-01 17:24:09 +01:00
Tim Waugh 54e47e6634 Reverted incorrect change introduced to fix bug #635786. 2010-10-01 11:05:29 +01:00
Tim Waugh 194420449e Merge branch 'f14' 2010-09-30 17:23:54 +01:00
Tim Waugh 5a1f2e81bc Merge branch 'f13' into f14 2010-09-30 17:22:14 +01:00
Tim Waugh 1deda51edb Don't use carriage return in ps2epsi output (bug #635786). 2010-09-30 17:14:29 +01:00
Tim Waugh e32518926c Include more documentation (bug #634354). 2010-09-30 16:28:57 +01:00
Jesse Keating 5c5fe72db2 - Rebuilt for gcc bug 634757 2010-09-29 22:22:47 -07:00
Jesse Keating 4783568235 - Rebuilt for gcc bug 634757 2010-09-29 14:16:47 -07:00
Tim Waugh 9930de3ed8 Updated to 9.00. 2010-09-24 14:36:59 +01:00
Tim Waugh 970432e3bd Merge branch 'f14' 2010-09-13 16:52:55 +01:00
Tim Waugh 0635370fe9 Merge branch 'f13' into f14 2010-09-13 16:49:48 +01:00
Tim Waugh d4326877f7 Merge branch 'f12' into f13 2010-09-13 16:36:46 +01:00
Tim Waugh a70c402edd Pulled in OpenSUSE fix for .runlibfileifexists (bug #610301). 2010-09-13 16:02:37 +01:00
Tim Waugh 7520dec851 Merge branch 'f14' 2010-09-03 12:45:12 +01:00
Tim Waugh 176932c607 Merge branch 'f13' into f14 2010-09-03 12:43:50 +01:00
Tim Waugh bc34ffaf5b Merge branch 'f12' into f13 2010-09-03 12:36:59 +01:00
Tim Waugh 14bd3ebe38 Restored Fontmap.local patch (bug #610301). 2010-09-03 11:56:39 +01:00
Tim Waugh d24aadea6e Applied patch to let gdevcups use automatic memory allocation. 2010-09-02 14:42:58 +01:00
Tim Waugh 92552fba1e Applied patch to fix NULL dereference in bbox driver (bug #591624). 2010-09-02 13:05:00 +01:00
Tim Waugh f35503ceee Applied upstream patch to fix iname.c segfault (bug #465311). 2010-09-02 12:15:51 +01:00
Tim Waugh ad7e8f307d Merge branch 'f14' 2010-08-26 15:40:00 +01:00
Tim Waugh 722aebdff5 Merge branch 'f13' into f14 2010-08-26 15:30:30 +01:00
Tim Waugh 3f91350de4 Merge branch 'f12' into f13 2010-08-26 15:24:30 +01:00
Tim Waugh c755f33188 Avoid epstopdf failure using upstream patch (bug #627390). 2010-08-26 14:54:26 +01:00
Tim Waugh 51b02415a0 More upstream fixes for bug #599564. 2010-08-26 14:46:34 +01:00
Tim Waugh 2ba9c298b1 Merge branch 'f14' 2010-08-25 16:36:45 +01:00
Tim Waugh 3ca561ed10 Merge branch 'f13' into f14 2010-08-25 16:36:11 +01:00
Tim Waugh bf4041ceb4 Merge branch 'f12' into f13 2010-08-25 16:36:05 +01:00
Tim Waugh 0c1e7532d2 More security fixes for bug #599564. 2010-08-25 16:19:31 +01:00
Tim Waugh 383821be8d Merge branch 'f14' 2010-08-25 14:26:29 +01:00
Tim Waugh 447e220937 Merge branch 'f13' into f14 2010-08-25 14:25:44 +01:00
Tim Waugh 6526222ba4 Merge branch 'f12' into f13 2010-08-25 14:24:12 +01:00
Tim Waugh 5a5e48476c Change SEARCH_HERE_FIRST default to make -P- default (bug #599564). 2010-08-25 14:02:19 +01:00
Tim Waugh b3e2cfe5e0 Removed redundant gs-executable patch (bug #502550). 2010-08-25 11:16:26 +01:00
Tim Waugh 0ded731e99 Removed redundant gs-executable patch (bug #502550). 2010-08-25 11:13:54 +01:00
Tim Waugh fede8614e7 Merge branch 'f13' into f14 2010-08-05 16:52:20 +01:00
Tim Waugh 56ff80c357 Merge branch 'f12' into f13 2010-08-05 16:51:33 +01:00
Tim Waugh 2e84257b37 Avoid another NULL pointer dereference in jbig2 code (bug #621569). 2010-08-05 16:15:39 +01:00
Tim Waugh 2270f43c6a Merge branch 'f13' into f14 2010-08-02 12:24:08 +01:00
Tim Waugh 92a0736e01 Merge branch 'f12' into f13 2010-08-02 12:23:29 +01:00
Fedora Release Engineering 996241c7f8 dist-git conversion 2010-07-28 15:37:04 +00:00
Fedora Release Engineering 4257a957f7 dist-git conversion 2010-07-28 15:36:44 +00:00
Fedora Release Engineering fde4161596 dist-git conversion 2010-07-28 15:36:36 +00:00
Tim Waugh 02461c194f - Applied patch to fix CVE-2010-1628 (memory corruption at PS stack
overflow, bug #592492).
2010-07-16 12:51:28 +00:00
Tim Waugh 33c4fe6c8b - Applied patch to fix CVE-2010-1628 (memory corruption at PS stack
overflow, bug #592492).
2010-07-16 12:51:22 +00:00
Tim Waugh 967dc4507b - Applied patch to fix CVE-2010-1628 (memory corruption at PS stack
overflow, bug #592492).
2010-07-16 12:50:52 +00:00
Tim Waugh 9156a8754c - Backported some more TIFF fixes (bug #573970). 2010-03-16 13:29:23 +00:00
Tim Waugh 36eb6194ad - Backported some more TIFF fixes (bug #573970). 2010-03-16 13:28:07 +00:00
Tim Waugh 4a1dbe16b0 - Backported some more TIFF fixes (bug #573970). 2010-03-16 13:05:56 +00:00
Tim Waugh 561959feca - Use upstream fix for TIFF default strip size (bug #571520). 2010-03-16 10:02:37 +00:00
Tim Waugh 37694f5adf - Use upstream fix for TIFF default strip size (bug #571520). 2010-03-16 10:01:20 +00:00
Tim Waugh 986d069293 - Use upstream fix for TIFF default strip size (bug #571520). 2010-03-16 10:00:10 +00:00
Tim Waugh 636305d658 - Restore the TIFF default strip size of 0 (bug #571520).
- Don't segfault closing tiffg3 device if opening failed (bug #571520).
- Don't revert gdevcups y-axis change (bug #541604).
- Reallocate memory in gdevcups when color depth changes (bug #563313).
2010-03-15 22:07:57 +00:00
Tim Waugh 5c333312ef - Restore the TIFF default strip size of 0 (bug #571520). 2010-03-15 17:35:28 +00:00
Tim Waugh ba097d7d21 - Restore the TIFF default strip size of 0 (bug #571520). 2010-03-15 17:09:41 +00:00
Tim Waugh 130b322cda - Don't revert gdevcups y-axis change (bug #541604).
- Reallocate memory in gdevcups when color depth changes (bug #563313).
2010-03-15 16:29:24 +00:00
Tim Waugh 9c4a7af0ae - Don't segfault closing tiffg3 device if opening failed (bug #571520). 2010-03-15 16:28:40 +00:00
Tim Waugh 4ec0ef2948 - Don't revert gdevcups y-axis change (bug #541604).
- Reallocate memory in gdevcups when color depth changes (bug #563313).
2010-03-15 15:14:02 +00:00
Tim Waugh 51650e03ec - Don't segfault closing tiffg3 device if opening failed (bug #571520). 2010-03-12 12:10:34 +00:00
Tim Waugh 53d0adbaef - Don't own the %{_datadir}/ghostscript or %{_datadir}/ghostscript/conf.d
directories as the filesystem package already does (bug #569442).
2010-03-05 12:42:08 +00:00
Tim Waugh 32b0bc8f49 - Don't own the %{_datadir}/ghostscript or %{_datadir}/ghostscript/conf.d
directories as the filesystem package already does (bug #569442).
2010-03-05 12:41:58 +00:00
Tim Waugh b41625a6c8 - Fixed summary.
- Fixed macros in changelog.
- Avoid mixed spaces and tabs.
- Ship COPYING file.
- Added comments for all patches.
- More consistent macro use.
2010-03-03 17:50:46 +00:00
Tim Waugh 34e7790c64 Bumped release. 2010-03-03 17:43:24 +00:00
Tim Waugh e29b690010 - Fixed summary.
- Fixed macros in changelog.
- Avoid mixed spaces and tabs.
- Ship COPYING file.
- Added comments for all patches.
- More consistent macro use.
2010-03-03 17:42:54 +00:00
Tim Waugh 70ad2fc0e1 - The doc subpackage is now noarch (bug #567179). 2010-02-22 12:30:20 +00:00
Tim Waugh 1a559dafda - The doc subpackage is now noarch (bug #567179). 2010-02-22 12:28:16 +00:00
Tim Waugh e47f4a7f1c - Actually revert the upstream gdevcups changes (bug #563313). 2010-02-20 16:19:57 +00:00
Tim Waugh cc2011b1fc - Actually revert the upstream gdevcups changes (bug #563313). 2010-02-20 16:19:23 +00:00
Tim Waugh d12a8ce983 - Actually revert the upstream gdevcups changes (bug #563313). 2010-02-20 16:18:34 +00:00
Tim Waugh 61b75ba371 - Fixed pdf2dsc.ps (bug #565935). 2010-02-20 16:10:51 +00:00
Tim Waugh 23a2c4f876 - Fixed pdf2dsc.ps (bug #565935). 2010-02-20 16:08:21 +00:00
Tim Waugh 2c5f5bee43 - Fixed pdf2dsc.ps (bug #565935). 2010-02-20 16:07:18 +00:00
Tim Waugh d34af71c88 - Use fixed patch for LDFLAGS to make sure libgs.so gets a soname (bug
#565935).
2010-02-20 15:49:47 +00:00
Tim Waugh 23f47da015 - Use fixed patch for LDFLAGS to make sure libgs.so gets a soname (bug
#565935).
2010-02-20 15:49:40 +00:00
Tim Waugh 865c7ebf9b - Use fixed patch for LDFLAGS to make sure libgs.so gets a soname (bug
#565935).
2010-02-20 15:49:25 +00:00
Tim Waugh e83bbf85ef - Fixed LDFLAGS when building dynamically linked executables (bug #565935). 2010-02-19 11:32:07 +00:00
Tim Waugh babc847f71 - Fixed LDFLAGS when building dynamically linked executables (bug #565935). 2010-02-19 11:31:52 +00:00
Tim Waugh a5134c5ade - Fixed LDFLAGS when building dynamically linked executables (bug #565935). 2010-02-19 10:41:27 +00:00
Tim Waugh be331bbe54 - Use system libtiff. 2010-02-17 18:20:00 +00:00
Tim Waugh efdde165b7 - Use system libtiff. 2010-02-17 17:59:48 +00:00
Tim Waugh e9e47e765b - Reverted gdevcups duplex changes as they cause a regression (see bug
#563313).
2010-02-17 17:53:03 +00:00
Tim Waugh a8817762e8 - 8.71 (bug #565935). 2010-02-17 16:54:08 +00:00
Tim Waugh b96cc94f6f - 8.71 (bug #565935). 2010-02-17 12:37:18 +00:00
Jesse Keating a737ed8a5c Initialize branch F-13 for ghostscript 2010-02-17 01:25:59 +00:00
Tim Waugh 117c32f095 - Reverted gdevcups duplex changes as they cause a regression (see bug
#563313).
2010-02-16 12:30:53 +00:00
Tim Waugh e680683871 - Reverted gdevcups duplex changes as they cause a regression (see bug
#563313).
2010-02-16 12:30:51 +00:00
Tim Waugh 1b044baeeb - Fixed pdftoraster so that it waits for its sub-process to exit.
- Another gdevcups duplex fix from upstream revision 10631 (bug #541604).
2010-01-25 10:35:39 +00:00
Tim Waugh d7e1d637e5 - Fixed pdftoraster so that it waits for its sub-process to exit.
- Another gdevcups duplex fix from upstream revision 10631 (bug #541604).
2010-01-25 10:32:46 +00:00
Tim Waugh 4a93f4fa87 - New ghostscript-cups sub-package for some additional filters:
pdftoraster; pstopxl. CUPS package still owns pstoraster for now.
2010-01-22 16:09:05 +00:00
Tim Waugh 7f19d06c8e - Don't build static library for ijs (bug #556051). 2010-01-22 09:18:54 +00:00
Tim Waugh 1491db8937 - Fixed gdevcups duplex output (bug #541604) by backporting upstream
revision 10625.
2010-01-22 09:17:33 +00:00
Tim Waugh 2cf5f5aea9 - Fixed gdevcups duplex output (bug #541604) by backporting upstream
revision 10625.
2010-01-21 13:30:16 +00:00
Tim Waugh a1afccab2e - Fixed gdevcups duplex output (bug #541604) by backporting upstream
revision 10625.
2010-01-21 13:27:43 +00:00
Tim Waugh 263db7bc48 - Don't ship libtool la files (bug #542674). 2009-12-24 12:34:27 +00:00
Tim Waugh 30670513ba - Fix debugging output from gdevcups (CVE-2009-4270, bug #540760).
- Harden ghostscript's debugging output functions (bug #540760).
2009-12-24 11:31:50 +00:00
Tim Waugh 59db7de965 - Fix debugging output from gdevcups (CVE-2009-4270, bug #540760).
- Harden ghostscript's debugging output functions (bug #540760).
2009-12-24 11:31:29 +00:00
Bill Nottingham 2656f78197 Fix typo that causes a failure to update the common directory. (releng
#2781)
2009-11-26 01:56:17 +00:00
Bill Nottingham d847a511f6 Fix typo that causes a failure to update the common directory. (releng
#2781)
2009-11-25 23:19:25 +00:00
Tim Waugh 01bff26309 - New cups sub-package for pstoraster/pdftoraster/pstopxl. 2009-10-15 12:52:20 +00:00
Jesse Keating 972caf59ac Initialize branch F-12 for ghostscript 2009-09-29 04:56:28 +00:00
Tim Waugh 15621b2b5a - 8.70.
- License has changed to GPLv3+. Packages containing programs that link to
    libgs/libijs are:
- foomatic (GPLv2+)
- libspectre (GPLv2+)
- ImageMagick (ImageMagick, listed on Licensing wiki page under "Good
    Licenses" and marked as GPLv3 compat)
- gutenprint (GPLv2+)
2009-08-03 17:27:32 +00:00
Tim Waugh fd5bf36ff0 - Moved examples to doc subpackage (bug #515167).
- Converted spec file to UTF-8.
2009-08-03 10:47:25 +00:00
Tim Waugh 3016e15a0a - Converted spec file to UTF-8. 2009-08-03 10:05:45 +00:00
Tim Waugh a82e34fd34 - Fixed CVE-2009-0583,0584 patch by using 255 as the maximum number of
points, not 100, and by not treating a missing black point tag as an
    error (bug #487744).
2009-07-30 13:49:52 +00:00
Rex Dieter 0bb2e4c55a cvs-only, not built
Thu Jul 30 2009 Rex Dieter <rdieter@fedoraproject.org> - 8.64-10
- License: GPLv2 and Redistributable, no modification permitted (bug
    #487510)
2009-07-30 12:52:39 +00:00
Jesse Keating 6df2cffe50 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild 2009-07-25 00:07:07 +00:00
Tim Waugh b76f8755c2 - Fix scripts so they don't get broken on install (bug #502550). 2009-06-10 17:04:49 +00:00
Tim Waugh 12d81d66b1 - Applied patch to fix NULL dereference in JBIG2 decoder (bug #503995). 2009-06-04 12:49:21 +00:00
Tim Waugh b62d20303f - Applied patch to fix CVE-2009-0792 (bug #491853).
- Applied patch to fix CVE-2009-0196 (bug #493379).
2009-04-15 16:25:02 +00:00
Tim Waugh d22b996f9e - Applied patch to fix CVE-2009-0583 (bug #487742) and CVE-2009-0584 (bug
#487744).
2009-03-20 12:35:56 +00:00
Jesse Keating 85995c54ff - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild 2009-02-24 21:21:56 +00:00
Tim Waugh 41ce9923c6 - Fix bitcmyk driver (bug #486644). 2009-02-17 17:27:22 +00:00
Tim Waugh 47b08ccdb4 - 8.64 (bug #483958). 2009-02-04 13:32:50 +00:00
Tim Waugh f8f891f65a - 8.64. 2009-02-04 13:11:11 +00:00
Tim Waugh 8a86623f3f - Removed trade marks to avoid any potential confusion. 2009-01-30 09:57:03 +00:00
Tim Waugh 7e0d0560ab - Removed last patch (unsuccessful). 2008-10-17 15:47:32 +00:00
Tim Waugh 75f99711b7 - Try out a work-around for bug #465311. 2008-10-17 11:14:05 +00:00
Tim Waugh b0a02a722b - Don't ship fixmswrd.pl as it pulls in perl (bug #463948). 2008-10-15 15:22:45 +00:00
Tim Waugh 9f0b67fe7c - Split out a doc sub-package (bug #466507). 2008-10-14 10:54:40 +00:00
Tim Waugh 3116a3c29a - 8.63. No longer need r8591 or incomplete-ccittfax patches.
- Compile without strict aliasing opts due to warnings across several
    files.
- Don't run autogen.sh for main package, just for ijs which doesn't ship
    with a configure script.
2008-08-04 10:15:59 +00:00
Tim Waugh 3f2c793a48 8.62-4 2008-06-23 15:47:33 +00:00
Tim Waugh 733f9f4f59 - Applied patch to work around bug #229174. 2008-06-23 14:11:34 +00:00
Tim Waugh d6a8216e11 - Applied patch from upstream to fix box_fill_path for shfill (bug
#452348).
2008-06-23 11:58:48 +00:00
Tim Waugh 6fd98b0a31 - Fix pksmraw output (bug #308211). 2008-03-31 16:29:32 +00:00
Tim Waugh 6a01a7c271 - No longer need CVE-2008-0411 patch.
- Don't ship URW fonts; we already have them.
2008-03-04 18:02:50 +00:00
Tim Waugh 1762de5bb7 8.62-2 2008-03-04 17:47:22 +00:00
Tim Waugh 05c0279c51 - No longer need CVE-2008-0411 patch. 2008-03-04 17:44:54 +00:00
Tim Waugh 22dff3b597 Renumbered patches. 2008-03-04 11:24:42 +00:00
Tim Waugh dd8785b474 - 8.62. No longer need IJS KRGB patch, or patch for gs bug 689577. 2008-03-04 11:22:12 +00:00
Tim Waugh 84e3fdeb18 Fixed bug ID. 2008-02-27 17:11:11 +00:00
Tim Waugh 0e32b81991 - Applied patch to fix CVE-2008-0411 (bug #435147). 2008-02-27 17:09:53 +00:00
Tim Waugh 70fe506577 Fixed typo. 2008-02-22 14:33:24 +00:00
Tim Waugh 1fa2af9aa9 - Build with jasper again (bug #433897). Build requires jasper-devel, and a
patch to remote jas_set_error_cb reference.
2008-02-22 14:25:28 +00:00
Tim Waugh 2cf528ec0f - Rebuild for GCC 4.3. 2008-02-13 12:10:36 +00:00
Tim Waugh d121f06743 - Don't build with jasper support. 2008-01-28 15:30:01 +00:00
Tim Waugh d05124d3e5 - Build requires jasper-devel.
- Remove bundled libraries.
2008-01-28 15:21:34 +00:00
Tim Waugh 08d24bfef6 - Applied upstream patch for bug #416321. 2007-12-11 15:29:31 +00:00
Tim Waugh 2050c98074 - Fixed runlibfileifexists patch. 2007-11-30 11:01:37 +00:00
Tim Waugh 89ab42c26f Apply the patch. 2007-11-30 09:07:06 +00:00
Tim Waugh 3e4c6fe3b7 - Revert previous change, but define .runlibfileifexists, not just
runlibfileifexists.
2007-11-30 09:03:51 +00:00
Tim Waugh f08a51a880 Fixed comment. 2007-11-28 13:47:27 +00:00
Tim Waugh 58606b2428 - No longer need runlibfileifexists.
- Use runlibfile in cidfmap.
2007-11-28 13:41:45 +00:00
Tim Waugh a671dd4185 - Add /usr/share/fonts to fontpath (bug #402551). 2007-11-28 12:50:53 +00:00
Tim Waugh 89d528c749 8.61-2 2007-11-28 12:34:33 +00:00
Tim Waugh c09a9fe907 - Restore cidfmap-switching bits, except for FAPIcidfmap which is no longer
used.
2007-11-28 12:24:58 +00:00
Tim Waugh 8d8748a20b - Add runlibfileifexists to gs_init.ps. 2007-11-28 12:05:24 +00:00
Tim Waugh f96f06c143 - Build with --disable-compile-inits (bug #402501). 2007-11-28 11:20:33 +00:00
Tim Waugh 1b697da225 - 8.61. 2007-11-23 10:11:06 +00:00
Tim Waugh ff17cad90e - Applied patch from upstream to fix CVE-2007-2721 (bug #346511). 2007-10-23 13:37:33 +00:00
Bill Nottingham bd2db7c620 makefile update to properly grab makefile.common 2007-10-15 18:47:19 +00:00
Tim Waugh 6ab0d7dace - Marked localized man pages as %lang (bug #322321). 2007-10-09 12:28:25 +00:00
Tim Waugh fc314e5732 Include missing piece. 2007-09-27 11:23:56 +00:00
Tim Waugh 1555141555 - Back-ported mkstemp64 patch (bug #308211). 2007-09-27 11:05:26 +00:00
Tim Waugh 0c939a784d - More specific license tag. 2007-08-23 16:14:00 +00:00
Tim Waugh 06f2d18d9f - 8.60. 2007-08-03 17:27:23 +00:00
Tim Waugh 5c25057eb1 8.60-0.r8112.2 2007-07-20 14:21:32 +00:00
Tim Waugh da5847e794 - Own %{_libdir}/ghostscript (bug #246026). 2007-07-16 12:30:44 +00:00
Tim Waugh f7888265f7 Include missing patch. 2007-07-11 12:06:32 +00:00
Tim Waugh 36419052f9 - 8.60 snapshot from svn. Patches dropped:
- big-cmap-post
- split-cidfnmap
- exactly-enable-cidfnmap
- Fontmap.local No longer needed:
- gxcht-64bit-crash
2007-07-11 11:43:45 +00:00
Tim Waugh 20e71695f9 - Apply fonts in CIDFnmap even if the same fontnames are already registered
(bug #163231).
- Resolves: rhbz#163231
2007-04-17 10:12:30 +00:00
Tim Waugh b5ff478a7d - New file CIDFmap (bug #233966).
- Allow local overrides for FAPIcidfmap, cidfmap and Fontmap (bug #233966).
- Resolves: rhbz#233966 rhbz#233966
2007-04-17 10:05:22 +00:00
Tim Waugh 09a3e2a37b - Fixed configuration file locations (bug #233966).
- Resolves: rhbz#233966
2007-04-03 13:39:01 +00:00
Tim Waugh f2d513ae8b - 8.15.4. 2007-03-14 21:56:28 +00:00
Tim Waugh b524225de7 8.15.3-7 2007-01-25 12:16:44 +00:00
Tim Waugh ff495ba08e - dvipdf script fixes (bug #88906).
- Resolves: rhbz#88906
2007-01-25 12:15:57 +00:00
Tim Waugh 9446583888 - Moved libijs.so and libgs.so into devel package (bug #203623).
- Resolves: rhbz#203623
2007-01-25 12:13:13 +00:00
Tim Waugh 043d60f302 - Configure with --with-drivers=ALL since the advertised default is not
what gets used (bug #223819).
- Resolves: rhbz#223819
2007-01-24 10:35:02 +00:00
Tim Waugh b7c1eb3c1e Include patch 2007-01-18 13:22:03 +00:00
Tim Waugh 07ece8cc04 8.15.3-5 2007-01-18 13:20:09 +00:00
Tim Waugh d2691e1748 - Backported gxcht 64bit crash fix from GPL trunk (bug #177763).
- Resolves: rhbz#177763
2007-01-18 13:16:49 +00:00
Tim Waugh 9adfd97848 - Own cjkv directory (bug #221380, bug #222375).
- Resolves: rhbz#221380 rhbz#222375
2007-01-12 14:52:16 +00:00
Tim Waugh 3259141cf0 8.15.3-3 2006-12-05 16:46:54 +00:00
Tim Waugh d7fa87e26a - Added split-cidfnmap patch (bug #194592).
- Resolves: rhbz#194592
2006-12-05 16:45:13 +00:00
Tim Waugh 3da9d92cb8 - 8.15.3. No longer need gtk2, ps2epsi, badc, pagesize,
use-external-freetype, split-font-configuration or cjkv patches.
- Renumbered patches.
2006-11-16 17:35:44 +00:00
Tim Waugh 2265fe0750 - Apply CJKV patch from svn164:165 plus the fix from svn173:174 (bug
#194592, bug #203712, possibly bug #167596).
2006-10-03 14:18:40 +00:00
Jesse Keating ee8eec74b1 bumped for rebuild 2006-07-12 05:55:07 +00:00
Tim Waugh 566900fdec - Revert CJKV patch. 2006-06-23 10:28:43 +00:00
Tomáš Mráz bb877a03dc - rebuilt with new gnutls 2006-06-14 16:34:20 +00:00
Tim Waugh baa88bc29f - Apply CJKV patch from svn164:165. 2006-06-13 13:58:06 +00:00
Tim Waugh aaa2f40d15 - Undo svn sync. 2006-06-13 12:52:15 +00:00
Tim Waugh 42590c5c21 - Sync to svn165. 2006-06-09 16:50:24 +00:00
Tim Waugh 6e08ee84ce 8.15.2-4 2006-05-26 14:04:13 +00:00
Tim Waugh f21c6e9eb1 - Fix ijs-config not to have multilib conflicts (bug #192672) 2006-05-26 14:03:07 +00:00
Tim Waugh d2ff86e758 - Remove adobe-cmaps and acro5-cmaps, since latest CMaps are already
included (bug #190463).
2006-05-02 17:52:23 +00:00
Tim Waugh b8ce1a7b91 Fix pkgconfig confusion. 2006-04-25 16:34:58 +00:00
Tim Waugh 89e8e44b4d - 8.15.2.
- No longer need build, krgb, pdfwrite, str1570 patches.
2006-04-25 16:20:39 +00:00
Tim Waugh 78127402c2 8.15.1-10 2006-04-24 16:09:21 +00:00
Tim Waugh 26861b1b4f - Fix emacs interaction (bug #189321, STR #1570). 2006-04-24 16:08:42 +00:00
Tim Waugh 93c8b75925 - Spec file cleanups (bug #188066). 2006-04-10 10:39:03 +00:00
Tim Waugh f8f327274e - Add %{_datadir}/fonts/japanese to font path (bug #188448). 2006-04-10 10:34:23 +00:00
Tim Waugh a68fa66733 - Build requires libtool (bug #188341). 2006-04-08 09:57:54 +00:00
Tim Waugh 1d190d27f5 Really remove pstoraster. 2006-04-06 10:44:39 +00:00
Tim Waugh 8fb25e0ad2 Fixed typo. 2006-04-06 10:34:58 +00:00
Tim Waugh da3a5d39ba - Fix pdfwrite (bug #187834).
- CUPS filters go in /usr/lib/cups/filter even on lib64 platforms.
2006-04-06 10:19:22 +00:00
Tim Waugh e1f8bc1189 8.15.1-7 2006-03-02 14:58:45 +00:00
Tim Waugh 389a5d8f2d - BuildRequires: gnutls-devel
- Updated KRGB patch for gdevijs.
2006-03-02 14:58:26 +00:00
Karsten Hopp 48b7127ce2 - BuildRequires: libXt-devel
In file included from ./src/gdevxalt.c:22: ./src/x_.h:139:29: error:
    X11/Intrinsic.h: No such file or directory ./src/x_.h:140:30: error:
    X11/StringDefs.h: No such file or directory ./src/x_.h:141:25: error:
    X11/Shell.h: No such file or directory make: *** [obj/gdevxalt.o] Error
    1
2006-02-28 13:29:52 +00:00
Jesse Keating 20d7c68a42 bump for bug in double-long on ppc(64) 2006-02-11 03:06:53 +00:00
Jesse Keating 447cd5b79f bump for new gcc/glibc 2006-02-07 11:47:15 +00:00
Tim Waugh 12518b6b76 - Updated adobe-cmaps to 200406 (bug #173613). 2006-01-30 17:54:59 +00:00
Tim Waugh 245be3029b 8.15.1-4 2006-01-27 11:59:04 +00:00
Tim Waugh 05c310554c - Support reading a big cmap/post table from a TrueType font. 2006-01-27 11:47:44 +00:00
Jesse Keating 65276dde90 gcc update bump 2005-12-09 22:40:33 +00:00
Tim Waugh 7cc772ff32 - Build does not explicitly require xorg-x11-devel. 2005-11-09 13:42:57 +00:00
Tim Waugh 407204b668 Require xorg-x11-devel not XFree86-devel 2005-11-09 10:07:25 +00:00
Tomáš Mráz 66c3749723 - rebuilt with new openssl 2005-11-09 09:44:45 +00:00
Tim Waugh 6c921dfc73 - Some directories should be "8.15" not "8.15.1" (bug #169198). 2005-09-26 17:18:02 +00:00
Tim Waugh 45109fe931 Fix setup line 2005-09-22 22:17:18 +00:00
Tim Waugh 47113264a3 Fix source0 2005-09-22 22:14:41 +00:00
Tim Waugh 06055cd6f7 Remove gs_rc 2005-09-22 22:12:48 +00:00
Tim Waugh ef16ab3992 - 8.15.1.
- No longer need overflow patch.
2005-09-22 22:12:17 +00:00
Tim Waugh 20bfe6e080 - Rebuilt for new cairo. 2005-08-16 09:15:09 +00:00
Tim Waugh 57f3798439 - Parametrize freetype, and disable it (bug #165962). 2005-08-15 12:18:44 +00:00
Tim Waugh 970da03f19 8.15-0.rc4.1 2005-08-12 10:30:44 +00:00
Tim Waugh 74e57dbfa3 - Fixed lips4v driver (bug #165713). 2005-08-12 10:01:26 +00:00
Tim Waugh a4a834a987 - 8.15rc4. 2005-08-12 09:58:16 +00:00
Tim Waugh 2ac9b5fd68 8.15-0.rc3.7 2005-08-09 12:55:02 +00:00
Tim Waugh 0a08c4e277 - Install adobe/acro5 CMaps (bug #165428). 2005-08-09 12:54:40 +00:00
Tim Waugh c14c331cad - Fixed split font configuration patch (bug #161187). 2005-07-18 14:26:17 +00:00
Tim Waugh 0dfb5c0456 8.15-0.rc3.5 2005-07-13 13:29:58 +00:00
Tim Waugh b2727e93a1 - Split font configuration (bug #161187). 2005-07-13 13:29:37 +00:00
Tim Waugh faa929d18b - Reverted this change:
- Build requires xorg-x11-devel, not XFree86-devel.
2005-07-13 09:05:30 +00:00
Tim Waugh c0ac82aa41 8.15-0.rc3.4 2005-07-12 13:16:06 +00:00
Tim Waugh 8e258de719 - Add Japanese fonts to FAPIcidfmap (bug #161187). 2005-07-12 12:29:38 +00:00
Tim Waugh a1de13651f - Moved Resource directory. 2005-07-12 10:48:10 +00:00
Tim Waugh 41ce6ddc0a - Added use-external-freetype patch (bug #161187). 2005-07-12 09:56:49 +00:00
Tim Waugh 244cfbf7d1 - Build requires libtiff-devel (bug #162826). 2005-07-11 12:35:01 +00:00
Tim Waugh 8590f53889 Clean up. 2005-06-23 17:32:13 +00:00
Tim Waugh 9693b90353 - Build requires xorg-x11-devel, not XFree86-devel. 2005-06-09 10:27:10 +00:00
Tim Waugh d177acaf0f 8.15-0.rc3.3 2005-06-09 10:07:58 +00:00
Tim Waugh cdd169a7b6 - Include ierrors.h in the devel package. 2005-06-09 10:02:03 +00:00
Tim Waugh acf8e9f01e - Drop 'Provides: libijs.so' because it is incorrect. 2005-06-08 13:58:11 +00:00
Tim Waugh 6d266b1e63 - Build igcref.c with -O0 to work around bug #150771. 2005-06-06 13:36:55 +00:00
Tim Waugh 1d8d9b49a6 - Renumber patches. 2005-06-06 13:35:21 +00:00
Tim Waugh 310a76fc37 More build fixes. 2005-06-03 22:13:52 +00:00
Tim Waugh 923b7d4a06 Build with --enable-dynamic to get -fPIC 2005-06-03 17:21:32 +00:00
Tim Waugh 0057c84fd1 - Add Mandriva's fPIC patch. 2005-06-03 16:45:54 +00:00
Tim Waugh 55e8fbca58 Provides: libijs.so 2005-06-03 16:17:56 +00:00
Tim Waugh bda1546e93 Fixed changelog. 2005-06-03 16:09:01 +00:00
Tim Waugh b7ad57d64e - Switch to ESP Ghostscript.
- 8.15.
- Lots of patches dropped. Perhaps some will need to be re-added.
2005-06-03 16:04:52 +00:00
Tim Waugh 1c8db13590 Fixed changelog 2005-03-10 18:06:45 +00:00
Tim Waugh a309054d1b - Build igcrej.c with -O0 to work around bug #150771. 2005-03-10 17:50:05 +00:00
Tim Waugh b0b63e57dc - Try building gs with -O0. 2005-03-10 12:54:10 +00:00
Tim Waugh 1c615e73d9 - Try building gs with -fno-strict-aliasing. 2005-03-10 12:03:59 +00:00
Tim Waugh e82d38730b - Rebuilt for new GCC. 2005-03-01 17:59:12 +00:00
Tim Waugh acc3e0ee06 Typo in changelog 2005-02-21 16:31:19 +00:00
Tim Waugh d4867991c3 - Fixed inspired by GCC 4. 2005-02-21 16:02:32 +00:00
Tim Waugh 26d7b7a3d0 - Correct permissions for %{_datadir}/ghostscript/Resource (bug #145420). 2005-01-18 11:11:43 +00:00
Tim Waugh f17ffe4c87 7.07-37 2004-12-10 16:32:35 +00:00
Tim Waugh d6f6040e9f - Fixed missing return statement (bug #136757). 2004-12-10 14:52:32 +00:00
Tim Waugh 407e0cf741 - Remove VFlib2 bits (bug #120498). 2004-12-09 15:10:52 +00:00
Tim Waugh aa4475c8c7 - Added /etc/ghostscript to search path and to file manifest (bug #98974). 2004-12-03 12:11:57 +00:00
Miloslav Trmac 55552e4126 - Convert man pages to UTF-8 2004-11-20 18:51:35 +00:00
Tim Waugh d6620b3695 - Fix for bug #136322 (temporary files). 2004-10-20 10:23:35 +00:00
Tim Waugh 495e977fdd - Turn off fontconfig until it's fixed (bug #133353). 2004-09-28 15:51:33 +00:00
Tim Waugh 28df9c5785 Fix build for no-fontconfig 2004-09-28 15:50:20 +00:00
cvsdist 4deb15317f auto-import changelog data from ghostscript-7.07-31.src.rpm
Wed Aug 18 2004 Tim Waugh <twaugh@redhat.com> 7.07-31
- Only ship gsx in the gtk subpackage.
2004-09-09 05:21:38 +00:00
cvsdist e7b0486879 auto-import ghostscript-7.07-30 from ghostscript-7.07-30.src.rpm 2004-09-09 05:21:34 +00:00
cvsdist af6faed769 auto-import ghostscript-7.07-29 from ghostscript-7.07-29.src.rpm 2004-09-09 05:21:23 +00:00
cvsdist c259c84e9e auto-import ghostscript-7.07-28 from ghostscript-7.07-28.src.rpm 2004-09-09 05:21:14 +00:00
cvsdist 31aefac56c auto-import ghostscript-7.07-27 from ghostscript-7.07-27.src.rpm 2004-09-09 05:21:00 +00:00
cvsdist 5357184847 auto-import ghostscript-7.07-26 from ghostscript-7.07-26.src.rpm 2004-09-09 05:20:21 +00:00
cvsdist f6e2595ab3 auto-import ghostscript-7.07-25 from ghostscript-7.07-25.src.rpm 2004-09-09 05:20:16 +00:00
cvsdist 181cea6580 auto-import ghostscript-7.07-19 from ghostscript-7.07-19.src.rpm 2004-09-09 05:19:11 +00:00
cvsdist cd9372848f auto-import changelog data from ghostscript-7.07-15.4.src.rpm
Tue Aug 17 2004 Tim Waugh <twaugh@redhat.com> 7.07-15.4
- Rebuilt.
2004-09-09 05:19:00 +00:00
cvsdist 4cf804b4e9 auto-import changelog data from ghostscript-7.07-15.3.src.rpm
Wed Aug 04 2004 Tim Waugh <twaugh@redhat.com> 7.07-15.3
- Turn on libgs (bug #129062).
2004-09-09 05:18:42 +00:00
cvsdist 4581572020 auto-import changelog data from ghostscript-7.07-15.2.src.rpm
Tue Mar 09 2004 Tim Waugh <twaugh@redhat.com> 7.07-15.2
- Added bjc250gs driver (bug #117860).
2004-09-09 05:18:32 +00:00
cvsdist 084d933387 auto-import changelog data from ghostscript-7.07-15.1.src.rpm
Thu Jan 15 2004 Tim Waugh <twaugh@redhat.com> 7.07-15.1
- Build for Fedora Core 1 printer drivers update.
- Turn off fontconfig.
Tue Jan 06 2004 Tim Waugh <twaugh@redhat.com> 7.07-15
- Build for Fedora Core 1 printer drivers update.
- Conflicts with foomatic before hpijs 1.5 data.
- Make fontconfig optional.
Sat Dec 13 2003 Tim Waugh <twaugh@redhat.com> 7.07-14
- Disable unnecessary debug messages from fontconfig support.
Fri Dec 05 2003 Tim Waugh <twaugh@redhat.com> 7.07-13
- Add fontconfig support (bug #111412).
Thu Nov 27 2003 Tim Waugh <twaugh@redhat.com>
- Build requires libjpeg-devel (bug #110737).
Tue Nov 11 2003 Tim Waugh <twaugh@redhat.com> 7.07-12
- Updated hpijs to 1.5 (bug #109714).
Mon Nov 10 2003 Tim Waugh <twaugh@redhat.com>
- Updated lxm3200 patch (bug #109625).
2004-09-09 05:18:21 +00:00
cvsdist 9ba9caf316 auto-import changelog data from ghostscript-7.07-11.src.rpm
Tue Sep 30 2003 Tim Waugh <twaugh@redhat.com> 7.07-11
- Updated gdevcups.c from CUPS 1.1.19.
- Apply NOMEDIAATTRS patch from CUPS 1.1.19 (bug #105401).
Thu Aug 28 2003 Tim Waugh <twaugh@redhat.com>
- Fix lips4v driver (bug #92337).
Wed Aug 20 2003 Tim Waugh <twaugh@redhat.com> 7.07-10
- Fix compilation problems in hpijs.
Mon Aug 04 2003 Tim Waugh <twaugh@redhat.com> 7.07-9
- Further fix from bug #100685.
Thu Jul 31 2003 Tim Waugh <twaugh@redhat.com> 7.07-8
- Further fix from bug #100685.
Tue Jul 29 2003 Tim Waugh <twaugh@redhat.com> 7.07-7
- Further fix from bug #100685.
Fri Jul 25 2003 Tim Waugh <twaugh@redhat.com> 7.07-6
- Further fix from bug #100557.
Thu Jul 24 2003 Tim Waugh <twaugh@redhat.com> 7.07-5
- Further fix from bug #100557.
- Fix bug #100685.
Wed Jul 23 2003 Tim Waugh <twaugh@redhat.com> 7.07-4
- Fix bug #100557.
Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com> 7.07-3
- rebuilt
Tue May 27 2003 Tim Waugh <twaugh@redhat.com>
- Fix sed usage in ps2epsi (bug #89300).
2004-09-09 05:18:04 +00:00
28 changed files with 4412 additions and 539 deletions

View File

@ -1,16 +0,0 @@
CIDFnmap-cjk-20030115.tar.gz
acro5-cmaps-2001.tar.gz
adobe-cmaps-200202.tar.gz
eplaseren-1.0.2-550.tgz
epson740.tgz
gdevmd2k-0.2a.tar.gz
ghostscript-7.05.tar.bz2
gnu-drivers.tar.gz
gs550j1.tar.gz
gs6.51-cjk-M2-R3.tar.gz
gs704-j-vlib.zip
hpijs-1.3.tar.gz
jpegsrc.v6b.tar.gz
lexmarkgs990908.tar.gz
lxm3200-0.4.1-gs5.50-src.tar.gz
pcl3-3.3.tar.gz

50
.gitignore vendored Normal file
View File

@ -0,0 +1,50 @@
acro5-cmaps-2001.tar.gz
adobe-cmaps-200202.tar.gz
eplaser-3.1.4-705.tgz
epson740.tgz
gdevmd2k-0.2a.tar.gz
ghostscript-7.07.tar.bz2
gs550j1.tar.gz
gs6.51-cjk-M2-R3.tar.gz
gs704-j-vlib.zip
lexmarkgs990908.tar.gz
lxm3200-tweaked-20030501.tar.gz
pcl3-3.3.tar.gz
espgs-8.15rc3-source.tar.bz2
adobe-cmaps-200204.tar.gz
espgs-8.15rc4-source.tar.bz2
espgs-8.15.1-source.tar.bz2
adobe-cmaps-200406.tar.gz
espgs-8.15.2-source.tar.bz2
espgs-8.15.3-source.tar.bz2
espgs-8.15.4-source.tar.bz2
ghostscript-8.60-r8117.tar.bz2
ghostscript-8.60.tar.bz2
ghostscript-8.61.tar.bz2
ghostscript-8.62.tar.bz2
ghostscript-8.63.tar.bz2
ghostscript-8.64.tar.bz2
ghostscript-8.70.tar.xz
ghostscript-8.71.tar.xz
/ghostscript-9.00.tar.xz
/ghostscript-9.01.tar.bz2
/ghostscript-9.02.tar.bz2
/ghostscript-9.04.tar.bz2
/ghostscript-9.05.tar.bz2
/ghostscript-9.06.tar.bz2
/ghostscript-9.06-cleaned.tar.bz2
/ghostscript-9.07.tar.bz2
/ghostscript-9.07-cleaned.tar.bz2
/ghostscript-9.08rc1.tar.gz
/ghostscript-9.08.tar.bz2
/ghostscript-9.09rc1.tar.gz
/ghostscript-9.09.tar.bz2
/ghostscript-9.10.tar.bz2
/ghostscript-9.10-cleaned.tar.bz2
/ghostscript-9.12-cleaned.tar.bz2
/ghostscript-9.14-cleaned.tar.bz2
/ghostscript-9.14-cleaned-1.tar.bz2
/ghostscript-9.15-cleaned.tar.bz2
/ghostscript-9.15-cleaned-1.tar.bz2
/ghostscript-9.16-cleaned-1.tar.bz2
/ghostscript-9.20.tar.xz

9
CIDFnmap Normal file
View File

@ -0,0 +1,9 @@
%!
% following lines are for CJK fonts.
(CIDFnmap.ja) .runlibfileifexists
(CIDFnmap.ko) .runlibfileifexists
(CIDFnmap.zh_CN) .runlibfileifexists
(CIDFnmap.zh_TW) .runlibfileifexists
% must be at the bottom of line to allow people overriding everything.
(CIDFnmap.local) .runlibfileifexists

View File

@ -1,6 +0,0 @@
# Makefile for source rpm: ghostscript
# $Id$
NAME := ghostscript
SPECFILE = $(firstword $(wildcard *.spec))
include ../common/Makefile.common

10
cidfmap Normal file
View File

@ -0,0 +1,10 @@
%!
% Don't change following line. We should ensure that the original one is surely loaded.
(cidfmap.GS) .runlibfile
% following lines are for CJK fonts.
(cidfmap.ja) .runlibfileifexists
(cidfmap.ko) .runlibfileifexists
(cidfmap.zh_CN) .runlibfileifexists
(cidfmap.zh_TW) .runlibfileifexists
% must be at the bottom of line to allow people overriding everything.
(cidfmap.local) .runlibfileifexists

26
generate-tarball.sh Executable file
View File

@ -0,0 +1,26 @@
#!/bin/sh
VERSION="$1"
rm -rf ghostscript-"$VERSION"
tar jxvf ghostscript-"$VERSION".tar.bz2
GS=ghostscript-"$VERSION"
# License unclear (bug #1000387).
rm -r "$GS"/jpegxr
# License unknown (bug #1149617).
## Documentation
rm -f "$GS"/contrib/japanese/doc/djgpp.txt
rm -f "$GS"/contrib/japanese/doc/gdevmag.txt
rm -f "$GS"/contrib/japanese/doc/gs261j.*
## Example code
rm -f "$GS"/examples/chess.ps
## %ram% IODevice
rm -f "$GS"/base/gsioram.c
rm -f "$GS"/base/ramfs.c
rm -f "$GS"/base/ramfs.h
sed -i -e 's, $(GLD)ramfs.dev,,' "$GS"/Makefile.in "$GS"/psi/msvc.mak
tar jcvf ghostscript-"$VERSION"-cleaned-1.tar.bz2 "$GS"

View File

@ -0,0 +1,33 @@
From 90fd0c7ca3efc1ddff64a86f4104b13b3ac969eb Mon Sep 17 00:00:00 2001
From: Michael Vrhel <michael.vrhel@artifex.com>
Date: Thu, 29 Dec 2016 14:00:21 -0800
Subject: [PATCH] Bug 697456. Dont create new ctx when pdf14 device reenabled
This bug had yet another weird case where the user created a
file that pushed the pdf14 device twice. We were in that case,
creating a new ctx and blowing away the original one with out
proper clean up. To avoid, only create a new one when we need it.
---
base/gdevp14.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/base/gdevp14.c b/base/gdevp14.c
index fd56ec9..f19318e 100644
--- a/base/gdevp14.c
+++ b/base/gdevp14.c
@@ -1669,8 +1669,10 @@ pdf14_open(gx_device *dev)
rect.p.y = 0;
rect.q.x = dev->width;
rect.q.y = dev->height;
- pdev->ctx = pdf14_ctx_new(&rect, dev->color_info.num_components,
- pdev->color_info.polarity != GX_CINFO_POLARITY_SUBTRACTIVE, dev);
+ /* If we are reenabling the device dont create a new ctx. Bug 697456 */
+ if (pdev->ctx == NULL)
+ pdev->ctx = pdf14_ctx_new(&rect, dev->color_info.num_components,
+ pdev->color_info.polarity != GX_CINFO_POLARITY_SUBTRACTIVE, dev);
if (pdev->ctx == NULL)
return_error(gs_error_VMerror);
pdev->free_devicen = true;
--
2.9.3

View File

@ -0,0 +1,30 @@
From c0502b3771e4eac89a199a3558182337d146d4ab Mon Sep 17 00:00:00 2001
From: Michael Vrhel <michael.vrhel@artifex.com>
Date: Thu, 29 Dec 2016 12:00:40 -0800
Subject: [PATCH] Bug 697444 Unmatched transparency group pop
This issue can only occur if there is an unmatched group pop.
If the interpreter is doing that, then the interpreter is
broken. With this bug the user is intentionally doing it.
We now throw and error when it occurs.
---
base/gdevp14.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/base/gdevp14.c b/base/gdevp14.c
index ad3478f..84f0f40 100644
--- a/base/gdevp14.c
+++ b/base/gdevp14.c
@@ -985,6 +985,9 @@ pdf14_pop_transparency_group(gs_gstate *pgs, pdf14_ctx *ctx,
bool blendspot = pdev->blendspot;
bool nonicc_conversion = true;
+ if (nos == NULL)
+ return_error(gs_error_unknownerror); /* Unmatched group pop */
+
#ifdef DEBUG
pdf14_debug_mask_stack_state(ctx);
#endif
--
2.9.3

View File

@ -0,0 +1,44 @@
From 4bef1a1d32e29b68855616020dbff574b9cda08f Mon Sep 17 00:00:00 2001
From: Robin Watts <Robin.Watts@artifex.com>
Date: Thu, 29 Dec 2016 15:57:43 +0000
Subject: [PATCH] Bug 697453: Avoid divide by 0 in scan conversion code.
Arithmetic overflow due to extreme values in the scan conversion
code can cause a division by 0.
Avoid this with a simple extra check.
dx_old=cf814d81
endp->x_next=b0e859b9
alp->x_next=8069a73a
leads to dx_den = 0
---
base/gxfill.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/base/gxfill.c b/base/gxfill.c
index 99196c0..2f81bb0 100644
--- a/base/gxfill.c
+++ b/base/gxfill.c
@@ -1741,7 +1741,7 @@ intersect(active_line *endp, active_line *alp, fixed y, fixed y1, fixed *p_y_new
fixed dx_old = alp->x_current - endp->x_current;
fixed dx_den = dx_old + endp->x_next - alp->x_next;
- if (dx_den <= dx_old)
+ if (dx_den <= dx_old || dx_den == 0)
return false; /* Intersection isn't possible. */
dy = y1 - y;
if_debug3('F', "[F]cross: dy=%g, dx_old=%g, dx_new=%g\n",
@@ -1750,7 +1750,7 @@ intersect(active_line *endp, active_line *alp, fixed y, fixed y1, fixed *p_y_new
/* Do the computation in single precision */
/* if the values are small enough. */
y_new =
- ((dy | dx_old) < 1L << (size_of(fixed) * 4 - 1) ?
+ (((ufixed)(dy | dx_old)) < (1L << (size_of(fixed) * 4 - 1)) ?
dy * dx_old / dx_den :
(INCR_EXPR(mq_cross), fixed_mult_quo(dy, dx_old, dx_den)))
+ y;
--
2.9.3

View File

@ -0,0 +1,50 @@
From daf85701dab05f17e924a48a81edc9195b4a04e8 Mon Sep 17 00:00:00 2001
From: Ken Sharp <ken.sharp@artifex.com>
Date: Wed, 21 Dec 2016 16:54:14 +0000
Subject: [PATCH] fix crash with bad data supplied to makeimagedevice
Bug #697450 "Null pointer dereference in gx_device_finalize()"
The problem here is that the code to finalise a device unconditionally
frees the icc_struct member of the device structure. However this
particular (weird) device is not setup as a normal device, probably
because its very, very ancient. Its possible for the initialisation
of the device to abort with an error before calling gs_make_mem_device()
which is where the icc_struct member gets allocated (or set to NULL).
If that happens, then the cleanup code tries to free the device, which
calls finalize() which tries to free a garbage pointer.
Setting the device memory to 0x00 after we allocate it means that the
icc_struct member will be NULL< and our memory manager allows for that
happily enough, which avoids the problem.
---
base/gsdevmem.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/base/gsdevmem.c b/base/gsdevmem.c
index 97b9cf4..fe75bcc 100644
--- a/base/gsdevmem.c
+++ b/base/gsdevmem.c
@@ -225,6 +225,18 @@ gs_makewordimagedevice(gx_device ** pnew_dev, const gs_matrix * pmat,
if (pnew == 0)
return_error(gs_error_VMerror);
+
+ /* Bug #697450 "Null pointer dereference in gx_device_finalize()"
+ * If we have incorrect data passed to gs_initialise_wordimagedevice() then the
+ * initialisation will fail, crucially it will fail *before* it calls
+ * gs_make_mem_device() which initialises the device. This means that the
+ * icc_struct member will be uninitialsed, but the device finalise method
+ * will unconditionally free that memory. Since its a garbage pointer, bad things happen.
+ * Apparently we do still need makeimagedevice to be available from
+ * PostScript, so in here just zero the device memory, which means that
+ * the finalise routine won't have a problem.
+ */
+ memset(pnew, 0x00, st_device_memory.ssize);
code = gs_initialize_wordimagedevice(pnew, pmat, width, height,
colors, num_colors, word_oriented,
page_device, mem);
--
2.9.3

View File

@ -0,0 +1,180 @@
From fee19fa8d4f6f351e5a76f5801884880249d6a45 Mon Sep 17 00:00:00 2001
From: Chris Liddell <chris.liddell@artifex.com>
Date: Wed, 5 Oct 2016 09:55:55 +0100
Subject: [PATCH] Bug 697178: Add a file permissions callback
For the rare occasions when the graphics library directly opens a file
(currently for reading), this allows us to apply any restrictions on
file access normally applied in the interpteter.
---
base/gsicc_manage.c | 10 ++++++----
base/gslibctx.c | 12 +++++++++++-
base/gslibctx.h | 7 +++++++
psi/imain.c | 2 ++
psi/int.mak | 2 +-
psi/zfile.c | 19 +++++++++++++++++++
psi/zfile.h | 7 +++++++
7 files changed, 53 insertions(+), 6 deletions(-)
diff --git a/base/gsicc_manage.c b/base/gsicc_manage.c
index 931c2a6..e9c09c3 100644
--- a/base/gsicc_manage.c
+++ b/base/gsicc_manage.c
@@ -1124,10 +1124,12 @@ gsicc_open_search(const char* pname, int namelen, gs_memory_t *mem_gc,
}
/* First just try it like it is */
- str = sfopen(pname, "r", mem_gc);
- if (str != NULL) {
- *strp = str;
- return 0;
+ if (gs_check_file_permission(mem_gc, pname, namelen, "r") >= 0) {
+ str = sfopen(pname, "r", mem_gc);
+ if (str != NULL) {
+ *strp = str;
+ return 0;
+ }
}
/* If that fails, try %rom% */ /* FIXME: Not sure this is needed or correct */
diff --git a/base/gslibctx.c b/base/gslibctx.c
index fa4432a..f2c13e3 100644
--- a/base/gslibctx.c
+++ b/base/gslibctx.c
@@ -183,7 +183,7 @@ int gs_lib_ctx_init( gs_memory_t *mem )
mem->gs_lib_ctx = NULL;
return -1;
}
-
+ pio->client_check_file_permission = NULL;
gp_get_realtime(pio->real_time_0);
/* Set scanconverter to 1 (default) */
@@ -336,3 +336,13 @@ void errflush(const gs_memory_t *mem)
fflush(mem->gs_lib_ctx->fstderr);
/* else nothing to flush */
}
+
+int
+gs_check_file_permission (gs_memory_t *mem, const char *fname, const int len, const char *permission)
+{
+ int code = 0;
+ if (mem->gs_lib_ctx->client_check_file_permission != NULL) {
+ code = mem->gs_lib_ctx->client_check_file_permission(mem, fname, len, permission);
+ }
+ return code;
+}
diff --git a/base/gslibctx.h b/base/gslibctx.h
index 84ec205..55eb4a6 100644
--- a/base/gslibctx.h
+++ b/base/gslibctx.h
@@ -32,6 +32,9 @@ typedef struct gs_fapi_server_s gs_fapi_server;
# define gs_font_dir_DEFINED
typedef struct gs_font_dir_s gs_font_dir;
#endif
+
+typedef int (*client_check_file_permission_t) (gs_memory_t *mem, const char *fname, const int len, const char *permission);
+
typedef struct gs_lib_ctx_s
{
gs_memory_t *memory; /* mem->gs_lib_ctx->memory == mem */
@@ -61,6 +64,7 @@ typedef struct gs_lib_ctx_s
struct gx_io_device_s **io_device_table;
int io_device_table_count;
int io_device_table_size;
+ client_check_file_permission_t client_check_file_permission;
/* Define the default value of AccurateScreens that affects setscreen
and setcolorscreen. */
bool screen_accurate_screens;
@@ -132,6 +136,9 @@ int
gs_lib_ctx_get_default_device_list(const gs_memory_t *mem, char** dev_list_str,
int *list_str_len);
+int
+gs_check_file_permission (gs_memory_t *mem, const char *fname, const int len, const char *permission);
+
#define IS_LIBCTX_STDOUT(mem, f) (f == mem->gs_lib_ctx->fstdout)
#define IS_LIBCTX_STDERR(mem, f) (f == mem->gs_lib_ctx->fstderr)
diff --git a/psi/imain.c b/psi/imain.c
index 9a9bb5d..6874128 100644
--- a/psi/imain.c
+++ b/psi/imain.c
@@ -57,6 +57,7 @@
#include "ivmspace.h"
#include "idisp.h" /* for setting display device callback */
#include "iplugin.h"
+#include "zfile.h"
#ifdef PACIFY_VALGRIND
#include "valgrind.h"
@@ -212,6 +213,7 @@ gs_main_init1(gs_main_instance * minst)
"the_gs_name_table");
if (code < 0)
return code;
+ mem->gs_lib_ctx->client_check_file_permission = z_check_file_permissions;
}
code = obj_init(&minst->i_ctx_p, &idmem); /* requires name_init */
if (code < 0)
diff --git a/psi/int.mak b/psi/int.mak
index 4654afc..bb30d51 100644
--- a/psi/int.mak
+++ b/psi/int.mak
@@ -2024,7 +2024,7 @@ $(PSOBJ)imain.$(OBJ) : $(PSSRC)imain.c $(GH) $(memory__h) $(string__h)\
$(ialloc_h) $(iconf_h) $(idebug_h) $(idict_h) $(idisp_h) $(iinit_h)\
$(iname_h) $(interp_h) $(iplugin_h) $(isave_h) $(iscan_h) $(ivmspace_h)\
$(iinit_h) $(main_h) $(oper_h) $(ostack_h)\
- $(sfilter_h) $(store_h) $(stream_h) $(strimpl_h)\
+ $(sfilter_h) $(store_h) $(stream_h) $(strimpl_h) $(zfile_h)\
$(INT_MAK) $(MAKEDIRS)
$(PSCC) $(PSO_)imain.$(OBJ) $(C_) $(PSSRC)imain.c
diff --git a/psi/zfile.c b/psi/zfile.c
index b6caea2..fd94f67 100644
--- a/psi/zfile.c
+++ b/psi/zfile.c
@@ -197,6 +197,25 @@ check_file_permissions(i_ctx_t *i_ctx_p, const char *fname, int len,
return check_file_permissions_reduced(i_ctx_p, fname_reduced, rlen, permitgroup);
}
+/* z_check_file_permissions: see zfile.h for explanation
+ */
+int
+z_check_file_permissions(gs_memory_t *mem, const char *fname, const int len, const char *permission)
+{
+ i_ctx_t *i_ctx_p = get_minst_from_memory(mem)->i_ctx_p;
+ gs_parsed_file_name_t pname;
+ const char *permitgroup = permission[0] == 'r' ? "PermitFileReading" : "PermitFileWriting";
+ int code = gs_parse_file_name(&pname, fname, len, imemory);
+ if (code < 0)
+ return code;
+
+ if (pname.iodev && i_ctx_p->LockFilePermissions && strcmp(pname.iodev->dname, "%pipe%") == 0)
+ return gs_error_invalidfileaccess;
+
+ code = check_file_permissions(i_ctx_p, fname, len, permitgroup);
+ return code;
+}
+
/* <name_string> <access_string> file <file> */
int /* exported for zsysvm.c */
zfile(i_ctx_t *i_ctx_p)
diff --git a/psi/zfile.h b/psi/zfile.h
index fdf1373..a9399c7 100644
--- a/psi/zfile.h
+++ b/psi/zfile.h
@@ -22,4 +22,11 @@
int zopen_file(i_ctx_t *i_ctx_p, const gs_parsed_file_name_t *pfn,
const char *file_access, stream **ps, gs_memory_t *mem);
+/* z_check_file_permissions: a callback (via mem->gs_lib_ctx->client_check_file_permission)
+ * to allow applying the above permissions checks when opening file(s) from
+ * the graphics library
+ */
+int
+z_check_file_permissions(gs_memory_t *mem, const char *fname,
+ const int len, const char *permission);
#endif
--
2.7.4

View File

@ -0,0 +1,28 @@
From 8abd22010eb4db0fb1b10e430d5f5d83e015ef70 Mon Sep 17 00:00:00 2001
From: Chris Liddell <chris.liddell@artifex.com>
Date: Mon, 3 Oct 2016 01:46:28 +0100
Subject: [PATCH] Bug 697169: Be rigorous with SAFER permissions
Once we've opened our input file from the command line, enforce the SAFER
rules.
---
psi/zfile.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/psi/zfile.c b/psi/zfile.c
index b6caea2..2c6c958 100644
--- a/psi/zfile.c
+++ b/psi/zfile.c
@@ -1081,6 +1081,9 @@ lib_file_open(gs_file_path_ptr lib_path, const gs_memory_t *mem, i_ctx_t *i_ctx
gs_main_instance *minst = get_minst_from_memory(mem);
int code;
+ if (i_ctx_p && starting_arg_file)
+ i_ctx_p->starting_arg_file = false;
+
/* when starting arg files (@ files) iodev_default is not yet set */
if (iodev == 0)
iodev = (gx_io_device *)gx_io_device_table[0];
--
2.7.4

View File

@ -0,0 +1,25 @@
From 6f749c0c44e7b9e09737b9f29edf29925a34f0cf Mon Sep 17 00:00:00 2001
From: Chris Liddell <chris.liddell@artifex.com>
Date: Wed, 5 Oct 2016 09:59:25 +0100
Subject: [PATCH] Bug 697179: Reference count device icc profile
when copying a device
---
base/gsdevice.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/base/gsdevice.c b/base/gsdevice.c
index 778106f..aea986a 100644
--- a/base/gsdevice.c
+++ b/base/gsdevice.c
@@ -614,6 +614,7 @@ gx_device_init(gx_device * dev, const gx_device * proto, gs_memory_t * mem,
dev->memory = mem;
dev->retained = !internal;
rc_init(dev, mem, (internal ? 0 : 1));
+ rc_increment(dev->icc_struct);
}
void
--
2.7.4

View File

@ -0,0 +1,43 @@
From 875a0095f37626a721c7ff57d606a0f95af03913 Mon Sep 17 00:00:00 2001
From: Ken Sharp <ken.sharp@artifex.com>
Date: Wed, 5 Oct 2016 10:10:58 +0100
Subject: [PATCH] DSC parser - validate parameters
Bug #697190 ".initialize_dsc_parser doesn't validate the parameter is a dict type before using it."
Regardless of any security implications, its simply wrong for a PostScript
operator not to validate its parameter(s).
No differences expected.
---
psi/zdscpars.c | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/psi/zdscpars.c b/psi/zdscpars.c
index c05e154..9b4b605 100644
--- a/psi/zdscpars.c
+++ b/psi/zdscpars.c
@@ -150,11 +150,16 @@ zinitialize_dsc_parser(i_ctx_t *i_ctx_p)
ref local_ref;
int code;
os_ptr const op = osp;
- dict * const pdict = op->value.pdict;
- gs_memory_t * const mem = (gs_memory_t *)dict_memory(pdict);
- dsc_data_t * const data =
- gs_alloc_struct(mem, dsc_data_t, &st_dsc_data_t, "DSC parser init");
+ dict *pdict;
+ gs_memory_t *mem;
+ dsc_data_t *data;
+ check_read_type(*op, t_dictionary);
+
+ pdict = op->value.pdict;
+ mem = (gs_memory_t *)dict_memory(pdict);
+
+ data = gs_alloc_struct(mem, dsc_data_t, &st_dsc_data_t, "DSC parser init");
if (!data)
return_error(gs_error_VMerror);
data->document_level = 0;
--
2.7.4

View File

@ -0,0 +1,42 @@
From f5c7555c30393e64ec1f5ab0dfae5b55b3b3fc78 Mon Sep 17 00:00:00 2001
From: Chris Liddell <chris.liddell@artifex.com>
Date: Sat, 8 Oct 2016 16:10:27 +0100
Subject: [PATCH] Bug 697203: check for sufficient params in .sethalftone5
and param types
---
psi/zht2.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/psi/zht2.c b/psi/zht2.c
index fb4a264..dfa27a4 100644
--- a/psi/zht2.c
+++ b/psi/zht2.c
@@ -82,14 +82,22 @@ zsethalftone5(i_ctx_t *i_ctx_p)
gs_memory_t *mem;
uint edepth = ref_stack_count(&e_stack);
int npop = 2;
- int dict_enum = dict_first(op);
+ int dict_enum;
ref rvalue[2];
int cname, colorant_number;
byte * pname;
uint name_size;
int halftonetype, type = 0;
gs_gstate *pgs = igs;
- int space_index = r_space_index(op - 1);
+ int space_index;
+
+ if (ref_stack_count(&o_stack) < 2)
+ return_error(gs_error_stackunderflow);
+ check_type(*op, t_dictionary);
+ check_type(*(op - 1), t_dictionary);
+
+ dict_enum = dict_first(op);
+ space_index = r_space_index(op - 1);
mem = (gs_memory_t *) idmemory->spaces_indexed[space_index];
--
2.7.4

View File

@ -0,0 +1,897 @@
From cecf6b592945d247bf932f6a4f50065db4acfba8 Mon Sep 17 00:00:00 2001
From: Robin Watts <robin.watts@artifex.com>
Date: Mon, 12 Dec 2016 17:47:17 +0000
Subject: [PATCH] Squash signed/unsigned warnings in MSVC jbig2 build.
Also rename "new" to "new_dict", because "new" is a bad
variable name.
---
jbig2dec/jbig2.c | 4 +--
jbig2dec/jbig2.h | 8 +++--
jbig2dec/jbig2_generic.c | 2 +-
jbig2dec/jbig2_halftone.c | 24 +++++++--------
jbig2dec/jbig2_huffman.c | 10 +++---
jbig2dec/jbig2_huffman.h | 2 +-
jbig2dec/jbig2_image.c | 32 +++++++++----------
jbig2dec/jbig2_mmr.c | 66 ++++++++++++++++++++-------------------
jbig2dec/jbig2_page.c | 6 ++--
jbig2dec/jbig2_priv.h | 4 +--
jbig2dec/jbig2_segment.c | 10 +++---
jbig2dec/jbig2_symbol_dict.c | 73 ++++++++++++++++++++++----------------------
jbig2dec/jbig2_symbol_dict.h | 6 ++--
jbig2dec/jbig2_text.c | 16 +++++-----
jbig2dec/jbig2_text.h | 2 +-
15 files changed, 134 insertions(+), 131 deletions(-)
diff --git a/jbig2dec/jbig2.c b/jbig2dec/jbig2.c
index f729e29..e51380f 100644
--- a/jbig2dec/jbig2.c
+++ b/jbig2dec/jbig2.c
@@ -379,7 +379,7 @@ typedef struct {
} Jbig2WordStreamBuf;
static int
-jbig2_word_stream_buf_get_next_word(Jbig2WordStream *self, int offset, uint32_t *word)
+jbig2_word_stream_buf_get_next_word(Jbig2WordStream *self, size_t offset, uint32_t *word)
{
Jbig2WordStreamBuf *z = (Jbig2WordStreamBuf *) self;
const byte *data = z->data;
@@ -390,7 +390,7 @@ jbig2_word_stream_buf_get_next_word(Jbig2WordStream *self, int offset, uint32_t
else if (offset > z->size)
return -1;
else {
- int i;
+ size_t i;
result = 0;
for (i = 0; i < z->size - offset; i++)
diff --git a/jbig2dec/jbig2.h b/jbig2dec/jbig2.h
index d5aa52f..624e0ed 100644
--- a/jbig2dec/jbig2.h
+++ b/jbig2dec/jbig2.h
@@ -56,17 +56,19 @@ typedef struct _Jbig2SymbolDictionary Jbig2SymbolDictionary;
*/
struct _Jbig2Image {
- int width, height, stride;
+ uint32_t width;
+ uint32_t height;
+ uint32_t stride;
uint8_t *data;
int refcount;
};
-Jbig2Image *jbig2_image_new(Jbig2Ctx *ctx, int width, int height);
+Jbig2Image *jbig2_image_new(Jbig2Ctx *ctx, uint32_t width, uint32_t height);
Jbig2Image *jbig2_image_clone(Jbig2Ctx *ctx, Jbig2Image *image);
void jbig2_image_release(Jbig2Ctx *ctx, Jbig2Image *image);
void jbig2_image_free(Jbig2Ctx *ctx, Jbig2Image *image);
void jbig2_image_clear(Jbig2Ctx *ctx, Jbig2Image *image, int value);
-Jbig2Image *jbig2_image_resize(Jbig2Ctx *ctx, Jbig2Image *image, int width, int height);
+Jbig2Image *jbig2_image_resize(Jbig2Ctx *ctx, Jbig2Image *image, uint32_t width, uint32_t height);
/* errors are returned from the library via a callback. If no callback
is provided (a NULL argument is passed ot jbig2_ctx_new) a default
diff --git a/jbig2dec/jbig2_generic.c b/jbig2dec/jbig2_generic.c
index 02fdbfb..9656198 100644
--- a/jbig2dec/jbig2_generic.c
+++ b/jbig2dec/jbig2_generic.c
@@ -718,7 +718,7 @@ jbig2_immediate_generic_region(Jbig2Ctx *ctx, Jbig2Segment *segment, const byte
byte seg_flags;
int8_t gbat[8];
int offset;
- int gbat_bytes = 0;
+ uint32_t gbat_bytes = 0;
Jbig2GenericRegionParams params;
int code = 0;
Jbig2Image *image = NULL;
diff --git a/jbig2dec/jbig2_halftone.c b/jbig2dec/jbig2_halftone.c
index aeab576..acfbc56 100644
--- a/jbig2dec/jbig2_halftone.c
+++ b/jbig2dec/jbig2_halftone.c
@@ -257,8 +257,8 @@ jbig2_decode_gray_scale_image(Jbig2Ctx *ctx, Jbig2Segment *segment,
{
uint8_t **GSVALS = NULL;
size_t consumed_bytes = 0;
- int i, j, code, stride;
- int x, y;
+ uint32_t i, j, stride, x, y;
+ int code;
Jbig2Image **GSPLANES;
Jbig2GenericRegionParams rparams;
Jbig2WordStream *ws = NULL;
@@ -276,9 +276,8 @@ jbig2_decode_gray_scale_image(Jbig2Ctx *ctx, Jbig2Segment *segment,
if (GSPLANES[i] == NULL) {
jbig2_error(ctx, JBIG2_SEVERITY_FATAL, segment->number, "failed to allocate %dx%d image for GSPLANES", GSW, GSH);
/* free already allocated */
- for (j = i - 1; j >= 0; --j) {
- jbig2_image_release(ctx, GSPLANES[j]);
- }
+ for (j = i; j > 0;)
+ jbig2_image_release(ctx, GSPLANES[--j]);
jbig2_free(ctx->allocator, GSPLANES);
return NULL;
}
@@ -323,9 +322,10 @@ jbig2_decode_gray_scale_image(Jbig2Ctx *ctx, Jbig2Segment *segment,
}
/* C.5 step 2. Set j = GSBPP-2 */
- j = GSBPP - 2;
+ j = GSBPP - 1;
/* C.5 step 3. decode loop */
- while (j >= 0) {
+ while (j > 0) {
+ j--;
/* C.5 step 3. (a) */
if (GSMMR) {
code = jbig2_decode_halftone_mmr(ctx, &rparams, data + consumed_bytes, size - consumed_bytes, GSPLANES[j], &consumed_bytes);
@@ -345,7 +345,6 @@ jbig2_decode_gray_scale_image(Jbig2Ctx *ctx, Jbig2Segment *segment,
GSPLANES[j]->data[i] ^= GSPLANES[j + 1]->data[i];
/* C.5 step 3. (c) */
- --j;
}
/* allocate GSVALS */
@@ -359,9 +358,8 @@ jbig2_decode_gray_scale_image(Jbig2Ctx *ctx, Jbig2Segment *segment,
if (GSVALS[i] == NULL) {
jbig2_error(ctx, JBIG2_SEVERITY_FATAL, segment->number, "failed to allocate GSVALS: %d bytes", GSH * GSW);
/* free already allocated */
- for (j = i - 1; j >= 0; --j) {
- jbig2_free(ctx->allocator, GSVALS[j]);
- }
+ for (j = i; j > 0;)
+ jbig2_free(ctx->allocator, GSVALS[--j]);
jbig2_free(ctx->allocator, GSVALS);
GSVALS = NULL;
goto cleanup;
@@ -450,7 +448,7 @@ jbig2_decode_halftone_region(Jbig2Ctx *ctx, Jbig2Segment *segment,
uint8_t **GI;
Jbig2Image *HSKIP = NULL;
Jbig2PatternDict *HPATS;
- int i;
+ uint32_t i;
uint32_t mg, ng;
int32_t x, y;
uint8_t gray_val;
@@ -476,7 +474,7 @@ jbig2_decode_halftone_region(Jbig2Ctx *ctx, Jbig2Segment *segment,
/* calculate ceil(log2(HNUMPATS)) */
HBPP = 0;
- while (HNUMPATS > (1 << ++HBPP));
+ while (HNUMPATS > (1U << ++HBPP));
/* 6.6.5 point 4. decode gray-scale image as mentioned in annex C */
GI = jbig2_decode_gray_scale_image(ctx, segment, data, size,
diff --git a/jbig2dec/jbig2_huffman.c b/jbig2dec/jbig2_huffman.c
index 4521b48..f77981b 100644
--- a/jbig2dec/jbig2_huffman.c
+++ b/jbig2dec/jbig2_huffman.c
@@ -47,16 +47,16 @@ struct _Jbig2HuffmanState {
is (offset + 4) * 8. */
uint32_t this_word;
uint32_t next_word;
- int offset_bits;
- int offset;
- int offset_limit;
+ uint32_t offset_bits;
+ uint32_t offset;
+ uint32_t offset_limit;
Jbig2WordStream *ws;
Jbig2Ctx *ctx;
};
static uint32_t
-huff_get_next_word(Jbig2HuffmanState *hs, int offset)
+huff_get_next_word(Jbig2HuffmanState *hs, uint32_t offset)
{
uint32_t word = 0;
Jbig2WordStream *ws = hs->ws;
@@ -213,7 +213,7 @@ jbig2_huffman_advance(Jbig2HuffmanState *hs, int offset)
/* return the offset of the huffman decode pointer (in bytes)
* from the beginning of the WordStream
*/
-int
+uint32_t
jbig2_huffman_offset(Jbig2HuffmanState *hs)
{
return hs->offset + (hs->offset_bits >> 3);
diff --git a/jbig2dec/jbig2_huffman.h b/jbig2dec/jbig2_huffman.h
index 5d1e6e0..cfda9e0 100644
--- a/jbig2dec/jbig2_huffman.h
+++ b/jbig2dec/jbig2_huffman.h
@@ -64,7 +64,7 @@ void jbig2_huffman_skip(Jbig2HuffmanState *hs);
void jbig2_huffman_advance(Jbig2HuffmanState *hs, int offset);
-int jbig2_huffman_offset(Jbig2HuffmanState *hs);
+uint32_t jbig2_huffman_offset(Jbig2HuffmanState *hs);
int32_t jbig2_huffman_get(Jbig2HuffmanState *hs, const Jbig2HuffmanTable *table, bool *oob);
diff --git a/jbig2dec/jbig2_image.c b/jbig2dec/jbig2_image.c
index 1ae614e..94e5a4c 100644
--- a/jbig2dec/jbig2_image.c
+++ b/jbig2dec/jbig2_image.c
@@ -32,10 +32,10 @@
/* allocate a Jbig2Image structure and its associated bitmap */
Jbig2Image *
-jbig2_image_new(Jbig2Ctx *ctx, int width, int height)
+jbig2_image_new(Jbig2Ctx *ctx, uint32_t width, uint32_t height)
{
Jbig2Image *image;
- int stride;
+ uint32_t stride;
int64_t check;
image = jbig2_new(ctx, Jbig2Image, 1);
@@ -99,7 +99,7 @@ jbig2_image_free(Jbig2Ctx *ctx, Jbig2Image *image)
/* resize a Jbig2Image */
Jbig2Image *
-jbig2_image_resize(Jbig2Ctx *ctx, Jbig2Image *image, int width, int height)
+jbig2_image_resize(Jbig2Ctx *ctx, Jbig2Image *image, uint32_t width, uint32_t height)
{
if (width == image->width) {
/* check for integer multiplication overflow */
@@ -133,11 +133,11 @@ jbig2_image_resize(Jbig2Ctx *ctx, Jbig2Image *image, int width, int height)
static int
jbig2_image_compose_unopt(Jbig2Ctx *ctx, Jbig2Image *dst, Jbig2Image *src, int x, int y, Jbig2ComposeOp op)
{
- int i, j;
- int sw = src->width;
- int sh = src->height;
- int sx = 0;
- int sy = 0;
+ uint32_t i, j;
+ uint32_t sw = src->width;
+ uint32_t sh = src->height;
+ uint32_t sx = 0;
+ uint32_t sy = 0;
/* clip to the dst image boundaries */
if (x < 0) {
@@ -200,10 +200,10 @@ jbig2_image_compose_unopt(Jbig2Ctx *ctx, Jbig2Image *dst, Jbig2Image *src, int x
int
jbig2_image_compose(Jbig2Ctx *ctx, Jbig2Image *dst, Jbig2Image *src, int x, int y, Jbig2ComposeOp op)
{
- int i, j;
- int w, h;
- int leftbyte, rightbyte;
- int shift;
+ uint32_t i, j;
+ uint32_t w, h;
+ uint32_t leftbyte, rightbyte;
+ uint32_t shift;
uint8_t *s, *ss;
uint8_t *d, *dd;
uint8_t mask, rightmask;
@@ -226,8 +226,8 @@ jbig2_image_compose(Jbig2Ctx *ctx, Jbig2Image *dst, Jbig2Image *src, int x, int
h += y;
y = 0;
}
- w = (x + w < dst->width) ? w : dst->width - x;
- h = (y + h < dst->height) ? h : dst->height - y;
+ w = ((uint32_t)x + w < dst->width) ? w : ((dst->width >= (uint32_t)x) ? dst->width - (uint32_t)x : 0);
+ h = ((uint32_t)y + h < dst->height) ? h : ((dst->height >= (uint32_t)y) ? dst->height - (uint32_t)y : 0);
#ifdef JBIG2_DEBUG
jbig2_error(ctx, JBIG2_SEVERITY_DEBUG, -1, "compositing %dx%d at (%d, %d) after clipping\n", w, h, x, y);
#endif
@@ -249,8 +249,8 @@ jbig2_image_compose(Jbig2Ctx *ctx, Jbig2Image *dst, Jbig2Image *src, int x, int
}
#endif
- leftbyte = x >> 3;
- rightbyte = (x + w - 1) >> 3;
+ leftbyte = (uint32_t)x >> 3;
+ rightbyte = ((uint32_t)x + w - 1) >> 3;
shift = x & 7;
/* general OR case */
diff --git a/jbig2dec/jbig2_mmr.c b/jbig2dec/jbig2_mmr.c
index d4cd3a2..390e27c 100644
--- a/jbig2dec/jbig2_mmr.c
+++ b/jbig2dec/jbig2_mmr.c
@@ -38,19 +38,21 @@
#include "jbig2_mmr.h"
typedef struct {
- int width;
- int height;
+ uint32_t width;
+ uint32_t height;
const byte *data;
size_t size;
- int data_index;
- int bit_index;
+ uint32_t data_index;
+ uint32_t bit_index;
uint32_t word;
} Jbig2MmrCtx;
+#define MINUS1 ((uint32_t)-1)
+
static void
jbig2_decode_mmr_init(Jbig2MmrCtx *mmr, int width, int height, const byte *data, size_t size)
{
- int i;
+ size_t i;
uint32_t word = 0;
mmr->width = width;
@@ -732,14 +734,14 @@ const mmr_table_node jbig2_mmr_black_decode[] = {
#define getbit(buf, x) ( ( buf[x >> 3] >> ( 7 - (x & 7) ) ) & 1 )
static int
-jbig2_find_changing_element(const byte *line, int x, int w)
+jbig2_find_changing_element(const byte *line, uint32_t x, uint32_t w)
{
int a, b;
if (line == 0)
- return w;
+ return (int)w;
- if (x == -1) {
+ if (x == MINUS1) {
a = 0;
x = 0;
} else {
@@ -758,7 +760,7 @@ jbig2_find_changing_element(const byte *line, int x, int w)
}
static int
-jbig2_find_changing_element_of_color(const byte *line, int x, int w, int color)
+jbig2_find_changing_element_of_color(const byte *line, uint32_t x, uint32_t w, int color)
{
if (line == 0)
return w;
@@ -772,9 +774,9 @@ static const byte lm[8] = { 0xFF, 0x7F, 0x3F, 0x1F, 0x0F, 0x07, 0x03, 0x01 };
static const byte rm[8] = { 0x00, 0x80, 0xC0, 0xE0, 0xF0, 0xF8, 0xFC, 0xFE };
static void
-jbig2_set_bits(byte *line, int x0, int x1)
+jbig2_set_bits(byte *line, uint32_t x0, uint32_t x1)
{
- int a0, a1, b0, b1, a;
+ uint32_t a0, a1, b0, b1, a;
a0 = x0 >> 3;
a1 = x1 >> 3;
@@ -831,8 +833,8 @@ jbig2_decode_get_run(Jbig2MmrCtx *mmr, const mmr_table_node *table, int initial_
static int
jbig2_decode_mmr_line(Jbig2MmrCtx *mmr, const byte *ref, byte *dst)
{
- int a0 = -1;
- int a1, a2, b1, b2;
+ uint32_t a0 = MINUS1;
+ uint32_t a1, a2, b1, b2;
int c = 0; /* 0 is white, black is 1 */
while (1) {
@@ -840,7 +842,7 @@ jbig2_decode_mmr_line(Jbig2MmrCtx *mmr, const byte *ref, byte *dst)
/* printf ("%08x\n", word); */
- if (a0 >= mmr->width)
+ if (a0 != MINUS1 && a0 >= mmr->width)
break;
if ((word >> (32 - 3)) == 1) {
@@ -848,7 +850,7 @@ jbig2_decode_mmr_line(Jbig2MmrCtx *mmr, const byte *ref, byte *dst)
jbig2_decode_mmr_consume(mmr, 3);
- if (a0 == -1)
+ if (a0 == MINUS1)
a0 = 0;
if (c == 0) {
@@ -860,7 +862,7 @@ jbig2_decode_mmr_line(Jbig2MmrCtx *mmr, const byte *ref, byte *dst)
a1 = mmr->width;
if (a2 > mmr->width)
a2 = mmr->width;
- if (a2 < a1 || a1 < 0)
+ if (a1 == MINUS1 || a2 < a1)
return -1;
jbig2_set_bits(dst, a1, a2);
a0 = a2;
@@ -874,7 +876,7 @@ jbig2_decode_mmr_line(Jbig2MmrCtx *mmr, const byte *ref, byte *dst)
a1 = mmr->width;
if (a2 > mmr->width)
a2 = mmr->width;
- if (a1 < a0 || a0 < 0)
+ if (a0 == MINUS1 || a1 < a0)
return -1;
jbig2_set_bits(dst, a0, a1);
a0 = a2;
@@ -888,7 +890,7 @@ jbig2_decode_mmr_line(Jbig2MmrCtx *mmr, const byte *ref, byte *dst)
b1 = jbig2_find_changing_element_of_color(ref, a0, mmr->width, !c);
b2 = jbig2_find_changing_element(ref, b1, mmr->width);
if (c) {
- if (b2 < a0 || a0 < 0)
+ if (a0 == MINUS1 || b2 < a0)
return -1;
jbig2_set_bits(dst, a0, b2);
}
@@ -900,7 +902,7 @@ jbig2_decode_mmr_line(Jbig2MmrCtx *mmr, const byte *ref, byte *dst)
jbig2_decode_mmr_consume(mmr, 1);
b1 = jbig2_find_changing_element_of_color(ref, a0, mmr->width, !c);
if (c) {
- if (b1 < a0 || a0 < 0)
+ if (a0 == MINUS1 || b1 < a0)
return -1;
jbig2_set_bits(dst, a0, b1);
}
@@ -915,7 +917,7 @@ jbig2_decode_mmr_line(Jbig2MmrCtx *mmr, const byte *ref, byte *dst)
if (b1 + 1 > mmr->width)
break;
if (c) {
- if (b1 + 1 < a0 || a0 < 0)
+ if (a0 == MINUS1 || b1 + 1 < a0)
return -1;
jbig2_set_bits(dst, a0, b1 + 1);
}
@@ -930,7 +932,7 @@ jbig2_decode_mmr_line(Jbig2MmrCtx *mmr, const byte *ref, byte *dst)
if (b1 + 2 > mmr->width)
break;
if (c) {
- if (b1 + 2 < a0 || a0 < 0)
+ if (a0 == MINUS1 || b1 + 2 < a0)
return -1;
jbig2_set_bits(dst, a0, b1 + 2);
}
@@ -942,10 +944,10 @@ jbig2_decode_mmr_line(Jbig2MmrCtx *mmr, const byte *ref, byte *dst)
/* printf ("VR(3)\n"); */
jbig2_decode_mmr_consume(mmr, 7);
b1 = jbig2_find_changing_element_of_color(ref, a0, mmr->width, !c);
- if (b1 + 3 > mmr->width)
+ if (b1 + 3 > (int)mmr->width)
break;
if (c) {
- if (b1 + 3 < a0 || a0 < 0)
+ if (a0 == MINUS1 || b1 + 3 < a0)
return -1;
jbig2_set_bits(dst, a0, b1 + 3);
}
@@ -957,10 +959,10 @@ jbig2_decode_mmr_line(Jbig2MmrCtx *mmr, const byte *ref, byte *dst)
/* printf ("VL(1)\n"); */
jbig2_decode_mmr_consume(mmr, 3);
b1 = jbig2_find_changing_element_of_color(ref, a0, mmr->width, !c);
- if (b1 - 1 < 0)
+ if (b1 < 1)
break;
if (c) {
- if (b1 - 1 < a0 || a0 < 0)
+ if (a0 == MINUS1 || b1 - 1 < a0)
return -1;
jbig2_set_bits(dst, a0, b1 - 1);
}
@@ -972,7 +974,7 @@ jbig2_decode_mmr_line(Jbig2MmrCtx *mmr, const byte *ref, byte *dst)
/* printf ("VL(2)\n"); */
jbig2_decode_mmr_consume(mmr, 6);
b1 = jbig2_find_changing_element_of_color(ref, a0, mmr->width, !c);
- if (b1 - 2 < 0)
+ if (b1 < 2)
break;
if (c) {
if (b1 - 2 < a0 || a0 < 0)
@@ -987,10 +989,10 @@ jbig2_decode_mmr_line(Jbig2MmrCtx *mmr, const byte *ref, byte *dst)
/* printf ("VL(3)\n"); */
jbig2_decode_mmr_consume(mmr, 7);
b1 = jbig2_find_changing_element_of_color(ref, a0, mmr->width, !c);
- if (b1 - 3 < 0)
+ if (b1 < 3)
break;
if (c) {
- if (b1 - 3 < a0 || a0 < 0)
+ if (a0 == MINUS1 || b1 - 3 < a0)
return -1;
jbig2_set_bits(dst, a0, b1 - 3);
}
@@ -1009,10 +1011,10 @@ int
jbig2_decode_generic_mmr(Jbig2Ctx *ctx, Jbig2Segment *segment, const Jbig2GenericRegionParams *params, const byte *data, size_t size, Jbig2Image *image)
{
Jbig2MmrCtx mmr;
- const int rowstride = image->stride;
+ const uint32_t rowstride = image->stride;
byte *dst = image->data;
byte *ref = NULL;
- int y;
+ uint32_t y;
int code = 0;
jbig2_decode_mmr_init(&mmr, image->width, image->height, data, size);
@@ -1047,10 +1049,10 @@ int
jbig2_decode_halftone_mmr(Jbig2Ctx *ctx, const Jbig2GenericRegionParams *params, const byte *data, size_t size, Jbig2Image *image, size_t *consumed_bytes)
{
Jbig2MmrCtx mmr;
- const int rowstride = image->stride;
+ const uint32_t rowstride = image->stride;
byte *dst = image->data;
byte *ref = NULL;
- int y;
+ uint32_t y;
int code = 0;
const uint32_t EOFB = 0x001001;
diff --git a/jbig2dec/jbig2_page.c b/jbig2dec/jbig2_page.c
index 110ff7c..1ed1c8a 100644
--- a/jbig2dec/jbig2_page.c
+++ b/jbig2dec/jbig2_page.c
@@ -155,9 +155,9 @@ int
jbig2_end_of_stripe(Jbig2Ctx *ctx, Jbig2Segment *segment, const uint8_t *segment_data)
{
Jbig2Page page = ctx->pages[ctx->current_page];
- int end_row;
+ uint32_t end_row;
- end_row = jbig2_get_int32(segment_data);
+ end_row = jbig2_get_uint32(segment_data);
if (end_row < page.end_row) {
jbig2_error(ctx, JBIG2_SEVERITY_WARNING, segment->number,
"end of stripe segment with non-positive end row advance" " (new end row %d vs current end row %d)", end_row, page.end_row);
@@ -248,7 +248,7 @@ jbig2_page_add_result(Jbig2Ctx *ctx, Jbig2Page *page, Jbig2Image *image, int x,
/* grow the page to accomodate a new stripe if necessary */
if (page->striped) {
- int new_height = y + image->height + page->end_row;
+ uint32_t new_height = y + image->height + page->end_row;
if (page->image->height < new_height) {
jbig2_error(ctx, JBIG2_SEVERITY_DEBUG, -1, "growing page buffer to %d rows " "to accomodate new stripe", new_height);
diff --git a/jbig2dec/jbig2_priv.h b/jbig2dec/jbig2_priv.h
index 42ba496..3d44b42 100644
--- a/jbig2dec/jbig2_priv.h
+++ b/jbig2dec/jbig2_priv.h
@@ -132,7 +132,7 @@ struct _Jbig2Page {
uint32_t x_resolution, y_resolution; /* in pixels per meter */
uint16_t stripe_size;
bool striped;
- int end_row;
+ uint32_t end_row;
uint8_t flags;
Jbig2Image *image;
};
@@ -182,7 +182,7 @@ int jbig2_halftone_region(Jbig2Ctx *ctx, Jbig2Segment *segment, const byte *segm
typedef struct _Jbig2WordStream Jbig2WordStream;
struct _Jbig2WordStream {
- int (*get_next_word)(Jbig2WordStream *self, int offset, uint32_t *word);
+ int (*get_next_word)(Jbig2WordStream *self, size_t offset, uint32_t *word);
};
Jbig2WordStream *jbig2_word_stream_buf_new(Jbig2Ctx *ctx, const byte *data, size_t size);
diff --git a/jbig2dec/jbig2_segment.c b/jbig2dec/jbig2_segment.c
index 2e0db67..5b63706 100644
--- a/jbig2dec/jbig2_segment.c
+++ b/jbig2dec/jbig2_segment.c
@@ -39,10 +39,10 @@ jbig2_parse_segment_header(Jbig2Ctx *ctx, uint8_t *buf, size_t buf_size, size_t
uint8_t rtscarf;
uint32_t rtscarf_long;
uint32_t *referred_to_segments;
- int referred_to_segment_count;
- int referred_to_segment_size;
- int pa_size;
- int offset;
+ uint32_t referred_to_segment_count;
+ uint32_t referred_to_segment_size;
+ uint32_t pa_size;
+ uint32_t offset;
/* minimum possible size of a jbig2 segment header */
if (buf_size < 11)
@@ -83,7 +83,7 @@ jbig2_parse_segment_header(Jbig2Ctx *ctx, uint8_t *buf, size_t buf_size, size_t
/* 7.2.5 */
if (referred_to_segment_count) {
- int i;
+ uint32_t i;
referred_to_segments = jbig2_new(ctx, uint32_t, referred_to_segment_count * referred_to_segment_size);
if (referred_to_segments == NULL) {
diff --git a/jbig2dec/jbig2_symbol_dict.c b/jbig2dec/jbig2_symbol_dict.c
index 2c71a4c..11a2252 100644
--- a/jbig2dec/jbig2_symbol_dict.c
+++ b/jbig2dec/jbig2_symbol_dict.c
@@ -88,40 +88,40 @@ jbig2_dump_symbol_dict(Jbig2Ctx *ctx, Jbig2Segment *segment)
/* return a new empty symbol dict */
Jbig2SymbolDict *
-jbig2_sd_new(Jbig2Ctx *ctx, int n_symbols)
+jbig2_sd_new(Jbig2Ctx *ctx, uint32_t n_symbols)
{
- Jbig2SymbolDict *new = NULL;
+ Jbig2SymbolDict *new_dict = NULL;
if (n_symbols < 0) {
jbig2_error(ctx, JBIG2_SEVERITY_FATAL, -1, "Negative number of symbols in symbol dict: %d", n_symbols);
return NULL;
}
- new = jbig2_new(ctx, Jbig2SymbolDict, 1);
- if (new != NULL) {
- new->glyphs = jbig2_new(ctx, Jbig2Image *, n_symbols);
- new->n_symbols = n_symbols;
+ new_dict = jbig2_new(ctx, Jbig2SymbolDict, 1);
+ if (new_dict != NULL) {
+ new_dict->glyphs = jbig2_new(ctx, Jbig2Image *, n_symbols);
+ new_dict->n_symbols = n_symbols;
} else {
jbig2_error(ctx, JBIG2_SEVERITY_FATAL, -1, "unable to allocate new empty symbol dict");
return NULL;
}
- if (new->glyphs != NULL) {
- memset(new->glyphs, 0, n_symbols * sizeof(Jbig2Image *));
+ if (new_dict->glyphs != NULL) {
+ memset(new_dict->glyphs, 0, n_symbols * sizeof(Jbig2Image *));
} else {
jbig2_error(ctx, JBIG2_SEVERITY_FATAL, -1, "unable to allocate glyphs for new empty symbol dict");
- jbig2_free(ctx->allocator, new);
+ jbig2_free(ctx->allocator, new_dict);
return NULL;
}
- return new;
+ return new_dict;
}
/* release the memory associated with a symbol dict */
void
jbig2_sd_release(Jbig2Ctx *ctx, Jbig2SymbolDict *dict)
{
- int i;
+ uint32_t i;
if (dict == NULL)
return;
@@ -142,12 +142,12 @@ jbig2_sd_glyph(Jbig2SymbolDict *dict, unsigned int id)
}
/* count the number of dictionary segments referred to by the given segment */
-int
+uint32_t
jbig2_sd_count_referred(Jbig2Ctx *ctx, Jbig2Segment *segment)
{
int index;
Jbig2Segment *rsegment;
- int n_dicts = 0;
+ uint32_t n_dicts = 0;
for (index = 0; index < segment->referred_to_segment_count; index++) {
rsegment = jbig2_find_segment(ctx, segment->referred_to_segments[index]);
@@ -166,8 +166,8 @@ jbig2_sd_list_referred(Jbig2Ctx *ctx, Jbig2Segment *segment)
int index;
Jbig2Segment *rsegment;
Jbig2SymbolDict **dicts;
- int n_dicts = jbig2_sd_count_referred(ctx, segment);
- int dindex = 0;
+ uint32_t n_dicts = jbig2_sd_count_referred(ctx, segment);
+ uint32_t dindex = 0;
dicts = jbig2_new(ctx, Jbig2SymbolDict *, n_dicts);
if (dicts == NULL) {
@@ -195,10 +195,10 @@ jbig2_sd_list_referred(Jbig2Ctx *ctx, Jbig2Segment *segment)
/* generate a new symbol dictionary by concatenating a list of
existing dictionaries */
Jbig2SymbolDict *
-jbig2_sd_cat(Jbig2Ctx *ctx, int n_dicts, Jbig2SymbolDict **dicts)
+jbig2_sd_cat(Jbig2Ctx *ctx, uint32_t n_dicts, Jbig2SymbolDict **dicts)
{
- int i, j, k, symbols;
- Jbig2SymbolDict *new = NULL;
+ uint32_t i, j, k, symbols;
+ Jbig2SymbolDict *new_dict = NULL;
/* count the imported symbols and allocate a new array */
symbols = 0;
@@ -206,17 +206,17 @@ jbig2_sd_cat(Jbig2Ctx *ctx, int n_dicts, Jbig2SymbolDict **dicts)
symbols += dicts[i]->n_symbols;
/* fill a new array with cloned glyph pointers */
- new = jbig2_sd_new(ctx, symbols);
- if (new != NULL) {
+ new_dict = jbig2_sd_new(ctx, symbols);
+ if (new_dict != NULL) {
k = 0;
for (i = 0; i < n_dicts; i++)
for (j = 0; j < dicts[i]->n_symbols; j++)
- new->glyphs[k++] = jbig2_image_clone(ctx, dicts[i]->glyphs[j]);
+ new_dict->glyphs[k++] = jbig2_image_clone(ctx, dicts[i]->glyphs[j]);
} else {
jbig2_error(ctx, JBIG2_SEVERITY_WARNING, -1, "failed to allocate new symbol dictionary");
}
- return new;
+ return new_dict;
}
/* Decoding routines */
@@ -431,7 +431,7 @@ jbig2_decode_symbol_dict(Jbig2Ctx *ctx,
if (REFAGGNINST > 1) {
Jbig2Image *image;
- int i;
+ uint32_t i;
if (tparams == NULL) {
/* First time through, we need to initialise the */
@@ -512,7 +512,7 @@ jbig2_decode_symbol_dict(Jbig2Ctx *ctx,
uint32_t ID;
int32_t RDX, RDY;
int BMSIZE = 0;
- int ninsyms = params->SDNUMINSYMS;
+ uint32_t ninsyms = params->SDNUMINSYMS;
int code1 = 0;
int code2 = 0;
int code3 = 0;
@@ -609,8 +609,9 @@ jbig2_decode_symbol_dict(Jbig2Ctx *ctx,
if (params->SDHUFF && !params->SDREFAGG) {
/* 6.5.9 */
Jbig2Image *image;
- int BMSIZE = jbig2_huffman_get(hs, params->SDHUFFBMSIZE, &code);
- int j, x;
+ uint32_t BMSIZE = jbig2_huffman_get(hs, params->SDHUFFBMSIZE, &code);
+ uint32_t j;
+ int x;
if (code || (BMSIZE < 0)) {
jbig2_error(ctx, JBIG2_SEVERITY_FATAL, segment->number, "error decoding size of collective bitmap!");
@@ -700,22 +701,22 @@ jbig2_decode_symbol_dict(Jbig2Ctx *ctx,
jbig2_error(ctx, JBIG2_SEVERITY_FATAL, segment->number, "failed to allocate symbols exported from symbols dictionary");
goto cleanup4;
} else {
- int i = 0;
- int j = 0;
- int k;
+ uint32_t i = 0;
+ uint32_t j = 0;
+ uint32_t k;
int exflag = 0;
- int64_t limit = params->SDNUMINSYMS + params->SDNUMNEWSYMS;
- int32_t exrunlength;
+ uint32_t limit = params->SDNUMINSYMS + params->SDNUMNEWSYMS;
+ uint32_t exrunlength;
int zerolength = 0;
while (i < limit) {
if (params->SDHUFF)
exrunlength = jbig2_huffman_get(hs, SBHUFFRSIZE, &code);
else
- code = jbig2_arith_int_decode(IAEX, as, &exrunlength);
+ code = jbig2_arith_int_decode(IAEX, as, (int32_t *)&exrunlength);
/* prevent infinite loop */
zerolength = exrunlength > 0 ? 0 : zerolength + 1;
- if (code || (exrunlength > limit - i) || (exrunlength < 0) || (zerolength > 4) || (exflag && (exrunlength > params->SDNUMEXSYMS - j))) {
+ if (code || (exrunlength > limit - i) || (exrunlength < 0) || (zerolength > 4) || (exflag && (exrunlength + j > params->SDNUMEXSYMS))) {
if (code)
jbig2_error(ctx, JBIG2_SEVERITY_FATAL, segment->number, "failed to decode exrunlength for exported symbols");
else if (exrunlength <= 0)
@@ -797,8 +798,8 @@ jbig2_symbol_dictionary(Jbig2Ctx *ctx, Jbig2Segment *segment, const byte *segmen
{
Jbig2SymbolDictParams params;
uint16_t flags;
- int sdat_bytes;
- int offset;
+ uint32_t sdat_bytes;
+ uint32_t offset;
Jbig2ArithCx *GB_stats = NULL;
Jbig2ArithCx *GR_stats = NULL;
int table_index = 0;
@@ -951,7 +952,7 @@ jbig2_symbol_dictionary(Jbig2Ctx *ctx, Jbig2Segment *segment, const byte *segmen
/* 7.4.2.2 (2) */
{
- int n_dicts = jbig2_sd_count_referred(ctx, segment);
+ uint32_t n_dicts = jbig2_sd_count_referred(ctx, segment);
Jbig2SymbolDict **dicts = NULL;
if (n_dicts > 0) {
diff --git a/jbig2dec/jbig2_symbol_dict.h b/jbig2dec/jbig2_symbol_dict.h
index d56d62d..30211d4 100644
--- a/jbig2dec/jbig2_symbol_dict.h
+++ b/jbig2dec/jbig2_symbol_dict.h
@@ -32,18 +32,18 @@ int jbig2_symbol_dictionary(Jbig2Ctx *ctx, Jbig2Segment *segment, const byte *se
Jbig2Image *jbig2_sd_glyph(Jbig2SymbolDict *dict, unsigned int id);
/* return a new empty symbol dict */
-Jbig2SymbolDict *jbig2_sd_new(Jbig2Ctx *ctx, int n_symbols);
+Jbig2SymbolDict *jbig2_sd_new(Jbig2Ctx *ctx, uint32_t n_symbols);
/* release the memory associated with a symbol dict */
void jbig2_sd_release(Jbig2Ctx *ctx, Jbig2SymbolDict *dict);
/* generate a new symbol dictionary by concatenating a list of
existing dictionaries */
-Jbig2SymbolDict *jbig2_sd_cat(Jbig2Ctx *ctx, int n_dicts, Jbig2SymbolDict **dicts);
+Jbig2SymbolDict *jbig2_sd_cat(Jbig2Ctx *ctx, uint32_t n_dicts, Jbig2SymbolDict **dicts);
/* count the number of dictionary segments referred
to by the given segment */
-int jbig2_sd_count_referred(Jbig2Ctx *ctx, Jbig2Segment *segment);
+uint32_t jbig2_sd_count_referred(Jbig2Ctx *ctx, Jbig2Segment *segment);
/* return an array of pointers to symbol dictionaries referred
to by a segment */
diff --git a/jbig2dec/jbig2_text.c b/jbig2dec/jbig2_text.c
index 5c99640..e77460f 100644
--- a/jbig2dec/jbig2_text.c
+++ b/jbig2dec/jbig2_text.c
@@ -55,7 +55,7 @@
int
jbig2_decode_text_region(Jbig2Ctx *ctx, Jbig2Segment *segment,
const Jbig2TextRegionParams *params,
- const Jbig2SymbolDict *const *dicts, const int n_dicts,
+ const Jbig2SymbolDict *const *dicts, const uint32_t n_dicts,
Jbig2Image *image, const byte *data, const size_t size, Jbig2ArithCx *GR_stats, Jbig2ArithState *as, Jbig2WordStream *ws)
{
/* relevent bits of 6.4.4 */
@@ -476,19 +476,19 @@ cleanup2:
int
jbig2_text_region(Jbig2Ctx *ctx, Jbig2Segment *segment, const byte *segment_data)
{
- int offset = 0;
+ uint32_t offset = 0;
Jbig2RegionSegmentInfo region_info;
Jbig2TextRegionParams params;
Jbig2Image *image = NULL;
Jbig2SymbolDict **dicts = NULL;
- int n_dicts = 0;
+ uint32_t n_dicts = 0;
uint16_t flags = 0;
uint16_t huffman_flags = 0;
Jbig2ArithCx *GR_stats = NULL;
int code = 0;
Jbig2WordStream *ws = NULL;
Jbig2ArithState *as = NULL;
- int table_index = 0;
+ uint32_t table_index = 0;
const Jbig2HuffmanParams *huffman_params = NULL;
/* 7.4.1 */
@@ -779,7 +779,7 @@ jbig2_text_region(Jbig2Ctx *ctx, Jbig2Segment *segment, const byte *segment_data
code = jbig2_error(ctx, JBIG2_SEVERITY_FATAL, segment->number, "unable to retrive symbol dictionaries! previous parsing error?");
goto cleanup1;
} else {
- int index;
+ uint32_t index;
if (dicts[0] == NULL) {
code = jbig2_error(ctx, JBIG2_SEVERITY_WARNING, segment->number, "unable to find first referenced symbol dictionary!");
@@ -823,8 +823,8 @@ jbig2_text_region(Jbig2Ctx *ctx, Jbig2Segment *segment, const byte *segment_data
}
if (!params.SBHUFF) {
- int SBSYMCODELEN, index;
- int SBNUMSYMS = 0;
+ uint32_t SBSYMCODELEN, index;
+ uint32_t SBNUMSYMS = 0;
for (index = 0; index < n_dicts; index++) {
SBNUMSYMS += dicts[index]->n_symbols;
@@ -840,7 +840,7 @@ jbig2_text_region(Jbig2Ctx *ctx, Jbig2Segment *segment, const byte *segment_data
}
/* Table 31 */
- for (SBSYMCODELEN = 0; (1 << SBSYMCODELEN) < SBNUMSYMS; SBSYMCODELEN++) {
+ for (SBSYMCODELEN = 0; (1U << SBSYMCODELEN) < SBNUMSYMS; SBSYMCODELEN++) {
}
params.IAID = jbig2_arith_iaid_ctx_new(ctx, SBSYMCODELEN);
params.IARI = jbig2_arith_int_ctx_new(ctx);
diff --git a/jbig2dec/jbig2_text.h b/jbig2dec/jbig2_text.h
index aec2732..51d242e 100644
--- a/jbig2dec/jbig2_text.h
+++ b/jbig2dec/jbig2_text.h
@@ -70,5 +70,5 @@ typedef struct {
int
jbig2_decode_text_region(Jbig2Ctx *ctx, Jbig2Segment *segment,
const Jbig2TextRegionParams *params,
- const Jbig2SymbolDict *const *dicts, const int n_dicts,
+ const Jbig2SymbolDict *const *dicts, const uint32_t n_dicts,
Jbig2Image *image, const byte *data, const size_t size, Jbig2ArithCx *GR_stats, Jbig2ArithState *as, Jbig2WordStream *ws);
--
2.9.3

View File

@ -0,0 +1,39 @@
From bfa6b2ecbe48edc69a7d9d22a12419aed25960b8 Mon Sep 17 00:00:00 2001
From: Chris Liddell <chris.liddell@artifex.com>
Date: Thu, 6 Apr 2017 16:44:54 +0100
Subject: [PATCH] Bug 697548: use the correct param list enumerator
When we encountered dictionary in a ref_param_list, we were using the enumerator
for the "parent" param_list, rather than the enumerator for the param_list
we just created for the dictionary. That parent was usually the stack
list enumerator, and caused a segfault.
Using the correct enumerator works better.
---
psi/iparam.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/psi/iparam.c b/psi/iparam.c
index 4e63b6d..b2fa85f 100644
--- a/psi/iparam.c
+++ b/psi/iparam.c
@@ -770,12 +770,13 @@ ref_param_read_typed(gs_param_list * plist, gs_param_name pkey,
gs_param_enumerator_t enumr;
gs_param_key_t key;
ref_type keytype;
+ dict_param_list *dlist = (dict_param_list *) pvalue->value.d.list;
param_init_enumerator(&enumr);
- if (!(*((iparam_list *) plist)->enumerate)
- ((iparam_list *) pvalue->value.d.list, &enumr, &key, &keytype)
+ if (!(*(dlist->enumerate))
+ ((iparam_list *) dlist, &enumr, &key, &keytype)
&& keytype == t_integer) {
- ((dict_param_list *) pvalue->value.d.list)->int_keys = 1;
+ dlist->int_keys = 1;
pvalue->type = gs_param_type_dict_int_keys;
}
}
--
2.9.3

View File

@ -0,0 +1,33 @@
From 309eca4e0a31ea70dcc844812691439312dad091 Mon Sep 17 00:00:00 2001
From: Ken Sharp <ken.sharp@artifex.com>
Date: Mon, 20 Mar 2017 09:34:11 +0000
Subject: [PATCH] Ensure a device has raster memory, before trying to read it.
Bug #697676 "Null pointer dereference in mem_get_bits_rectangle()"
This is only possible by abusing/mis-using Ghostscript-specific
language extensions, so cannot happen in a general PostScript program.
Nevertheless, Ghostscript should not crash. So this commit checks the
memory device to see if raster memory has been allocated, before trying
to read from it.
---
base/gdevmem.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/base/gdevmem.c b/base/gdevmem.c
index afd05bd..d52d684 100644
--- a/base/gdevmem.c
+++ b/base/gdevmem.c
@@ -606,6 +606,8 @@ mem_get_bits_rectangle(gx_device * dev, const gs_int_rect * prect,
GB_PACKING_CHUNKY | GB_COLORS_NATIVE | GB_ALPHA_NONE;
return_error(gs_error_rangecheck);
}
+ if (mdev->line_ptrs == 0x00)
+ return_error(gs_error_rangecheck);
if ((w <= 0) | (h <= 0)) {
if ((w | h) < 0)
return_error(gs_error_rangecheck);
--
2.9.3

View File

@ -0,0 +1,31 @@
From 5e57e483298dae8b8d4ec9aab37a526736ac2e97 Mon Sep 17 00:00:00 2001
From: Shailesh Mistry <shailesh.mistry@hotmail.co.uk>
Date: Wed, 26 Apr 2017 22:12:14 +0100
Subject: [PATCH] Bug 697693: Prevent SEGV due to integer overflow.
While building a Huffman table, the start and end points were susceptible
to integer overflow.
Thank you to Jiaqi for finding this issue and suggesting a patch.
---
jbig2dec/jbig2_huffman.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/jbig2dec/jbig2_huffman.c b/jbig2dec/jbig2_huffman.c
index 511e461..b4189a1 100644
--- a/jbig2dec/jbig2_huffman.c
+++ b/jbig2dec/jbig2_huffman.c
@@ -421,8 +421,8 @@ jbig2_build_huffman_table(Jbig2Ctx *ctx, const Jbig2HuffmanParams *params)
if (PREFLEN == CURLEN) {
int RANGELEN = lines[CURTEMP].RANGELEN;
- int start_j = CURCODE << shift;
- int end_j = (CURCODE + 1) << shift;
+ uint32_t start_j = CURCODE << shift;
+ uint32_t end_j = (CURCODE + 1) << shift;
byte eflags = 0;
if (end_j > max_j) {
--
2.9.3

View File

@ -0,0 +1,92 @@
From 4f83478c88c2e05d6e8d79ca4557eb039354d2f3 Mon Sep 17 00:00:00 2001
From: Chris Liddell <chris.liddell@artifex.com>
Date: Thu, 27 Apr 2017 13:03:33 +0100
Subject: [PATCH 1/2] Bug 697799: have .eqproc check its parameters
The Ghostscript custom operator .eqproc was not check the number or type of
the parameters it was given.
---
psi/zmisc3.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/psi/zmisc3.c b/psi/zmisc3.c
index 54b3042..37293ff 100644
--- a/psi/zmisc3.c
+++ b/psi/zmisc3.c
@@ -56,6 +56,12 @@ zeqproc(i_ctx_t *i_ctx_p)
ref2_t stack[MAX_DEPTH + 1];
ref2_t *top = stack;
+ if (ref_stack_count(&o_stack) < 2)
+ return_error(gs_error_stackunderflow);
+ if (!r_is_array(op - 1) || !r_is_array(op)) {
+ return_error(gs_error_typecheck);
+ }
+
make_array(&stack[0].proc1, 0, 1, op - 1);
make_array(&stack[0].proc2, 0, 1, op);
for (;;) {
--
2.9.3
From 04b37bbce174eed24edec7ad5b920eb93db4d47d Mon Sep 17 00:00:00 2001
From: Chris Liddell <chris.liddell@artifex.com>
Date: Thu, 27 Apr 2017 13:21:31 +0100
Subject: [PATCH 2/2] Bug 697799: have .rsdparams check its parameters
The Ghostscript internal operator .rsdparams wasn't checking the number or
type of the operands it was being passed. Do so.
---
psi/zfrsd.c | 22 +++++++++++++++-------
1 file changed, 15 insertions(+), 7 deletions(-)
diff --git a/psi/zfrsd.c b/psi/zfrsd.c
index 191107d..950588d 100644
--- a/psi/zfrsd.c
+++ b/psi/zfrsd.c
@@ -49,13 +49,20 @@ zrsdparams(i_ctx_t *i_ctx_p)
ref *pFilter;
ref *pDecodeParms;
int Intent = 0;
- bool AsyncRead;
+ bool AsyncRead = false;
ref empty_array, filter1_array, parms1_array;
uint i;
- int code;
+ int code = 0;
+
+ if (ref_stack_count(&o_stack) < 1)
+ return_error(gs_error_stackunderflow);
+ if (!r_has_type(op, t_dictionary) && !r_has_type(op, t_null)) {
+ return_error(gs_error_typecheck);
+ }
make_empty_array(&empty_array, a_readonly);
- if (dict_find_string(op, "Filter", &pFilter) > 0) {
+ if (r_has_type(op, t_dictionary)
+ && dict_find_string(op, "Filter", &pFilter) > 0) {
if (!r_is_array(pFilter)) {
if (!r_has_type(pFilter, t_name))
return_error(gs_error_typecheck);
@@ -94,12 +101,13 @@ zrsdparams(i_ctx_t *i_ctx_p)
return_error(gs_error_typecheck);
}
}
- code = dict_int_param(op, "Intent", 0, 3, 0, &Intent);
+ if (r_has_type(op, t_dictionary))
+ code = dict_int_param(op, "Intent", 0, 3, 0, &Intent);
if (code < 0 && code != gs_error_rangecheck) /* out-of-range int is ok, use 0 */
return code;
- if ((code = dict_bool_param(op, "AsyncRead", false, &AsyncRead)) < 0
- )
- return code;
+ if (r_has_type(op, t_dictionary))
+ if ((code = dict_bool_param(op, "AsyncRead", false, &AsyncRead)) < 0)
+ return code;
push(1);
op[-1] = *pFilter;
if (pDecodeParms)
--
2.9.3

View File

@ -0,0 +1,56 @@
From 99cf218dbd5f6fbdbda2ce6872eb9ab7f475c353 Mon Sep 17 00:00:00 2001
From: Chris Liddell <chris.liddell@artifex.com>
Date: Tue, 27 Sep 2016 11:22:18 +0100
Subject: [PATCH 1/2] Add pre-processor define for shared OpenJPEG
---
Makefile.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile.in b/Makefile.in
index 25875ad..2ca2a80 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -290,7 +290,7 @@ JBIG2_CFLAGS=@JBIG2_AUTOCONF_CFLAGS@
JPX_LIB=@JPX_DECODER@
SHARE_JPX=@SHARE_JPX@
JPXSRCDIR=@JPXDIR@
-JPX_CFLAGS=@JPX_AUTOCONF_CFLAGS@ @JPX_SSE_CFLAGS@
+JPX_CFLAGS=-DSHARE_JPX=$(SHARE_JPX) @JPX_AUTOCONF_CFLAGS@ @JPX_SSE_CFLAGS@
# uncomment the following three lines and one of the last two to
# compile in the Luratech lwf_jp2 codec
--
2.7.4
From 4f19ab99cac2d8a7d21aea34d8aea0727fad52d3 Mon Sep 17 00:00:00 2001
From: Didier Raboud <odyx@debian.org>
Date: Thu, 6 Oct 2016 17:08:41 +0200
Subject: [PATCH 2/2] Don't pass -DOPJ_STATIC when compiling the OpenJPEG code.
It makes the symbols hidden when including
/usr/include/openjpeg-2.1/openjpeg.h.
Fixes a FTBFS against libopenjp2-7 (>= 2.1.1).
Debian bug: https://bugs.debian.org/832873
---
base/lib.mak | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/base/lib.mak b/base/lib.mak
index 173e2c6..cffdc9d 100644
--- a/base/lib.mak
+++ b/base/lib.mak
@@ -1849,7 +1849,7 @@ $(GLOBJ)sjpx_openjpeg.$(OBJ) : $(GLSRC)sjpx_openjpeg.c $(AK) \
$(memory__h) $(gserror_h) $(gserrors_h) \
$(gdebug_h) $(strimpl_h) $(sjpx_openjpeg_h) $(LIB_MAK) $(MAKEDIRS)
$(GLJPXOPJCC) $(GLO_)sjpx_openjpeg.$(OBJ) \
- $(C_) -DOPJ_STATIC $(GLSRC)sjpx_openjpeg.c
+ $(C_) $(GLSRC)sjpx_openjpeg.c
# ---------------- Pixel-difference filters ---------------- #
# The Predictor facility of the LZW and Flate filters uses these.
--
2.7.4

View File

@ -0,0 +1,52 @@
From 329e0a6d187cc5b5698689d76636ed3214d7efa7 Mon Sep 17 00:00:00 2001
From: Chris Liddell <chris.liddell@artifex.com>
Date: Thu, 3 Nov 2016 13:09:27 +0000
Subject: [PATCH] Bug 697286: handle GlyphDirectory as an array
For high level devices that need to copy CIDFonts, we need to establish the
highest CID in a given CIDFont. If the font has a GlyphDirectory dictionary
the only way to do so is to iterate through the keys to find the highest.
The code handling this ignored that the GlyphDirectory could be an array,
which confused the dictionary content iterator, and caused a segfault.
In the case of an array, set the high CID to the highest index available in the
array.
---
psi/zfcid.c | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
diff --git a/psi/zfcid.c b/psi/zfcid.c
index ce583af..3098a22 100644
--- a/psi/zfcid.c
+++ b/psi/zfcid.c
@@ -76,15 +76,19 @@ cid_font_data_param(os_ptr op, gs_font_cid_data *pdata, ref *pGlyphDirectory)
* the number of CIDs in the font. We need to know the maximum CID
* when copying fonts, so calculate and store it now.
*/
- index = dict_first(pgdir);
- while (index >= 0) {
- index = dict_next(pgdir, index, (ref *)&element);
- if (index >= 0) {
- if (element[0].value.intval > pdata->MaxCID)
- pdata->MaxCID = element[0].value.intval;
+ if (r_has_type(pgdir, t_dictionary)) {
+ index = dict_first(pgdir);
+ while (index >= 0) {
+ index = dict_next(pgdir, index, (ref *)&element);
+ if (index >= 0) {
+ if (element[0].value.intval > pdata->MaxCID)
+ pdata->MaxCID = element[0].value.intval;
+ }
}
}
-
+ else {
+ pdata->MaxCID = r_size(pgdir) - 1;
+ }
return code;
} else {
return_error(gs_error_typecheck);
--
2.7.4

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,22 @@
From 32d8df77bf3326f708c13d6913547c01ce6d728c Mon Sep 17 00:00:00 2001
From: "David Kaspar [Dee'Kej]" <dkaspar@redhat.com>
Date: Fri, 7 Oct 2016 13:57:01 +0200
Subject: [PATCH] Make sure 'dvipdf' is being run securely
---
lib/dvipdf | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/dvipdf b/lib/dvipdf
index 802aeab..c92dfb0 100755
--- a/lib/dvipdf
+++ b/lib/dvipdf
@@ -43,4 +43,4 @@ fi
# We have to include the options twice because -I only takes effect if it
# appears before other options.
-exec dvips -Ppdf $DVIPSOPTIONS -q -f "$infile" | $GS_EXECUTABLE $OPTIONS -q -P- -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sstdout=%stderr -sOutputFile="$outfile" $OPTIONS -c .setpdfwrite -
+exec dvips -R -Ppdf $DVIPSOPTIONS -q -f "$infile" | $GS_EXECUTABLE $OPTIONS -q -P- -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sstdout=%stderr -sOutputFile="$outfile" $OPTIONS -c .setpdfwrite -
--
2.7.4

View File

@ -0,0 +1,93 @@
From ea8addd686889af76d70031998680196913243ec Mon Sep 17 00:00:00 2001
From: "David Kaspar [Dee'Kej]" <dkaspar@redhat.com>
Date: Fri, 7 Oct 2016 12:20:29 +0200
Subject: [PATCH 1/2] Fix error when using ImageMagick's convert:
Error: /undefined in .runlibfileexists
---
Resource/Init/gs_fonts.ps | 15 ++++++++++++---
Resource/Init/gs_init.ps | 9 +++++++++
2 files changed, 21 insertions(+), 3 deletions(-)
diff --git a/Resource/Init/gs_fonts.ps b/Resource/Init/gs_fonts.ps
index a3da615..77814b8 100644
--- a/Resource/Init/gs_fonts.ps
+++ b/Resource/Init/gs_fonts.ps
@@ -96,10 +96,19 @@ userdict /.nativeFontmap .FontDirectory maxlength dict put
% stack: dict file fontname filename|aliasname
1 index type /stringtype eq
1 index type /nametype eq and 1 index xcheck and
- 1 index /run eq 2 index /.runlibfile eq or and {
+ 1 index /run eq 2 index /.runlibfile eq 3 index /.runlibfileifexists eq or or and {
% This is an inclusion entry.
- pop findlibfile { exch pop } { file } ifelse
- 2 index exch .readFontmap pop
+ 0 index /.runlibfileifexists eq {
+ pop findlibfile {
+ exch pop
+ 2 index exch .readFontmap pop
+ } {
+ pop
+ } ifelse
+ } {
+ pop findlibfile { exch pop } { file } ifelse
+ 2 index exch .readFontmap pop
+ } ifelse
} {
% This is a real entry.
% Read and pop tokens until a semicolon.
diff --git a/Resource/Init/gs_init.ps b/Resource/Init/gs_init.ps
index ab7cfed..f9e035b 100644
--- a/Resource/Init/gs_init.ps
+++ b/Resource/Init/gs_init.ps
@@ -689,6 +689,14 @@ systemdict /internaldict dup .makeinternaldict .makeoperator
{ /undefinedfilename signalerror }
ifelse
} bind def
+/runlibfileifexists
+ { % We don't want to bind 'run' into this procedure,
+ % since run may get redefined.
+ findlibfile
+ { exch pop /run .systemvar exec }
+ { pop }
+ ifelse
+ } bind def
/selectdevice
{ finddevice setdevice .setdefaultscreen } bind def
/signalerror % <object> <errorname> signalerror -
@@ -857,6 +865,7 @@ userdict /.currentresourcefile //null put
} bind def
% Temporarily substitute it for the real runlibfile.
/.runlibfile /runlibfile load def
+/.runlibfileifexists /runlibfileifexists load def
/runlibfile /runlibfile0 load def
% Create the error handling machinery.
--
2.7.4
From 9878f41a229c67aba2e62ee7ab22ff37c2e5a04f Mon Sep 17 00:00:00 2001
From: "David Kaspar [Dee'Kej]" <dkaspar@redhat.com>
Date: Fri, 7 Oct 2016 12:57:06 +0200
Subject: [PATCH 2/2] Make sure customizations to
/etc/ghostscript/Fontmap.local are used
For more info, see: https://bugzilla.redhat.com/show_bug.cgi?id=610301
---
Resource/Init/Fontmap | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Resource/Init/Fontmap b/Resource/Init/Fontmap
index ae5af96..72aeb1f 100644
--- a/Resource/Init/Fontmap
+++ b/Resource/Init/Fontmap
@@ -2,3 +2,5 @@
% See Fontmap.GS for the syntax of real Fontmap files.
%% Replace 1 (Fontmap.GS)
(Fontmap.GS) .runlibfile
+% must be at the bottom of line to allow people overriding everything.
+(Fontmap.local) .runlibfileifexists
--
2.7.4

View File

@ -0,0 +1,101 @@
From 54572e8cf529eeb6a01234341d01a2fd555204e6 Mon Sep 17 00:00:00 2001
From: "David Kaspar [Dee'Kej]" <dkaspar@redhat.com>
Date: Fri, 7 Oct 2016 13:38:13 +0200
Subject: [PATCH] Use old names of urw-fonts
---
Resource/Init/Fontmap.GS | 78 ++++++++++++++++++++++++++----------------------
1 file changed, 43 insertions(+), 35 deletions(-)
diff --git a/Resource/Init/Fontmap.GS b/Resource/Init/Fontmap.GS
index a9fa335..949c152 100644
--- a/Resource/Init/Fontmap.GS
+++ b/Resource/Init/Fontmap.GS
@@ -81,41 +81,49 @@
% Aliases
-/AvantGarde-BookOblique /URWGothic-BookOblique ;
-/AvantGarde-Book /URWGothic-Book ;
-/AvantGarde-DemiOblique /URWGothic-DemiOblique ;
-/AvantGarde-Demi /URWGothic-Demi ;
-/Bookman-DemiItalic /URWBookman-DemiItalic ;
-/Bookman-Demi /URWBookman-Demi ;
-/Bookman-LightItalic /URWBookman-LightItalic ;
-/Bookman-Light /URWBookman-Light ;
-/Courier-Bold /NimbusMonoPS-Bold ;
-/Courier-BoldOblique /NimbusMonoPS-BoldItalic ;
-/Courier /NimbusMonoPS-Regular ;
-/Courier-Oblique /NimbusMonoPS-Italic ;
-/Helvetica-Bold /NimbusSans-Bold ;
-/Helvetica-BoldOblique /NimbusSans-BoldOblique ;
-/Helvetica-Narrow-Bold /NimbusSansNarrow-Bold ;
-/Helvetica-Narrow-BoldOblique /NimbusSansNarrow-BdOblique ;
-/Helvetica-Narrow /NimbusSansNarrow-Regular ;
-/Helvetica-Narrow-Oblique /NimbusSansNarrow-Oblique ;
-/Helvetica /NimbusSans-Regular ;
-/Helvetica-Oblique /NimbusSans-Oblique ;
-/NewCenturySchlbk-Bold /C059-Bold ;
-/NewCenturySchlbk-BoldItalic /C059-BdIta ;
-/NewCenturySchlbk-Italic /C059-Italic ;
-/NewCenturySchlbk-Roman /C059-Roman ;
-/Palatino-BoldItalic /P052-BoldItalic ;
-/Palatino-Bold /P052-Bold ;
-/Palatino-Italic /P052-Italic ;
-/Palatino-Roman /P052-Roman ;
-/Symbol /StandardSymbolsPS ;
-/Times-BoldItalic /NimbusRoman-BoldItalic ;
-/Times-Bold /NimbusRoman-Bold ;
-/Times-Italic /NimbusRoman-Italic ;
-/Times-Roman /NimbusRoman-Regular ;
-/ZapfChancery-MediumItalic /Z003-MediumItalic ;
-/ZapfDingbats /D050000L ;
+/AvantGarde-BookOblique /URWGothicL-BookObli ;
+/AvantGarde-Book /URWGothicL-Book ;
+/AvantGarde-DemiOblique /URWGothicL-DemiObli ;
+/AvantGarde-Demi /URWGothicL-Demi ;
+
+/Bookman-DemiItalic /URWBookmanL-DemiBoldItal ;
+/Bookman-Demi /URWBookmanL-DemiBold ;
+/Bookman-LightItalic /URWBookmanL-LighItal ;
+/Bookman-Light /URWBookmanL-Ligh ;
+
+/Courier-Bold /NimbusMonL-Bold ;
+/Courier-BoldOblique /NimbusMonL-BoldObli ;
+/Courier /NimbusMonL-Regu ;
+/Courier-Oblique /NimbusMonL-ReguObli ;
+
+/Helvetica-Bold /NimbusSanL-Bold ;
+/Helvetica-BoldOblique /NimbusSanL-BoldItal ;
+/Helvetica-Narrow-Bold /NimbusSanL-BoldCond ;
+/Helvetica-Narrow-BoldOblique /NimbusSanL-BoldCondItal ;
+/Helvetica-Narrow /NimbusSanL-ReguCond ;
+/Helvetica-Narrow-Oblique /NimbusSanL-ReguCondItal ;
+/Helvetica /NimbusSanL-Regu ;
+/Helvetica-Oblique /NimbusSanL-ReguItal ;
+
+/NewCenturySchlbk-Bold /CenturySchL-Bold ;
+/NewCenturySchlbk-BoldItalic /CenturySchL-BoldItal ;
+/NewCenturySchlbk-Italic /CenturySchL-Ital ;
+/NewCenturySchlbk-Roman /CenturySchL-Roma ;
+
+/Palatino-Roman /URWPalladioL-Roma ;
+/Palatino-Italic /URWPalladioL-Ital ;
+/Palatino-Bold /URWPalladioL-Bold ;
+/Palatino-BoldItalic /URWPalladioL-BoldItal ;
+
+/Symbol /StandardSymL ;
+
+/Times-BoldItalic /NimbusRomNo9L-MediItal ;
+/Times-Bold /NimbusRomNo9L-Medi ;
+/Times-Italic /NimbusRomNo9L-ReguItal ;
+/Times-Roman /NimbusRomNo9L-Regu ;
+
+/ZapfChancery-MediumItalic /URWChanceryL-MediItal ;
+/ZapfDingbats /Dingbats ;
%
%
--
2.7.4

File diff suppressed because it is too large Load Diff

17
sources
View File

@ -1,16 +1 @@
75fbe1a1c474d67fbc71cc4b1dbfb833 CIDFnmap-cjk-20030115.tar.gz
2fbae60417d42779f6488ab897dcaaf6 acro5-cmaps-2001.tar.gz
e8fbffadb8d70ce5f92708a699ae7765 adobe-cmaps-200202.tar.gz
911c7865a83a69135417989dee53f8fc eplaseren-1.0.2-550.tgz
2c6ebfe51cab34ee61e3dd524c8640cc epson740.tgz
5ed2b4218b8f77cb411f3d2e4509ed24 gdevmd2k-0.2a.tar.gz
821caada7e265ea5b698a78e6b029734 ghostscript-7.05.tar.bz2
9b25d4dd54d3297f33a8f7609fba70dd gnu-drivers.tar.gz
d202cd105c496b7f0eb5221316fb7b7f gs550j1.tar.gz
6f8e90effe12527a4c3b36ea4ce47b3c gs6.51-cjk-M2-R3.tar.gz
b32da7d61421384a0874037576033861 gs704-j-vlib.zip
9d0b79d0fae39f3efc5b8db60f51a8fa hpijs-1.3.tar.gz
dbd5f3b47ed13132f04c685d608a7547 jpegsrc.v6b.tar.gz
aea08da4e37ab68ed6f1dc451f24b30b lexmarkgs990908.tar.gz
ec11b9ef72ecaabb61eeba27e93f9f2b lxm3200-0.4.1-gs5.50-src.tar.gz
34e664c2a98b847598f8441f8cac7ab6 pcl3-3.3.tar.gz
8f3d383d48da22345937b66b01ab2960 ghostscript-9.20.tar.xz