Package: release.debian.org
Severity: normal
User: release.debian@packages.debian.org
Usertags: unblock
Dear RT,
I'd like to get the patch for #732440 included in Jessie. The bug was
reported three independent times and is a premature abort in Ghostscript
processing. The patch that fixes that bug was included in upstream's
9.14 version and can be directly cherry-picked on top of 9.06~dfsg-1 as
currently in jessie.
Here goes the proposed changelog:
ghostscript (9.06~dfsg-2) unstable; urgency=medium
* Add patch cherry-picked upstream to fix /typecheck error in /findfont
(Closes: #732440)
The cherry-picked patch as well as the full debdiff are attached.
TIA, cheers,
OdyX
diff -Nru ghostscript-9.06~dfsg/debian/changelog ghostscript-9.06~dfsg/debian/changelog
--- ghostscript-9.06~dfsg/debian/changelog 2014-08-27 04:08:44.0 +0200
+++ ghostscript-9.06~dfsg/debian/changelog 2015-01-07 08:28:03.0 +0100
@@ -1,3 +1,10 @@
+ghostscript (9.06~dfsg-2) unstable; urgency=medium
+
+ * Add patch cherry-picked upstream to fix /typecheck error in /findfont
+(Closes: #732440)
+
+ -- Didier Raboud o...@debian.org Wed, 07 Jan 2015 08:27:52 +0100
+
ghostscript (9.06~dfsg-1) unstable; urgency=medium
* Team upload
diff -Nru ghostscript-9.06~dfsg/debian/patches/020140211~f4584b0.patch ghostscript-9.06~dfsg/debian/patches/020140211~f4584b0.patch
--- ghostscript-9.06~dfsg/debian/patches/020140211~f4584b0.patch 1970-01-01 01:00:00.0 +0100
+++ ghostscript-9.06~dfsg/debian/patches/020140211~f4584b0.patch 2015-01-07 08:26:20.0 +0100
@@ -0,0 +1,48 @@
+From: Chris Liddell chris.lidd...@artifex.com
+Date: Tue, 11 Feb 2014 15:15:56 + (+)
+Subject: Bug 695031: don't assume we can read a font file
+X-Git-Tag: ghostpdl-9.12rc1~50
+X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=f4584b0e162a96ec143f0057de63c116e649e02b
+Bug-Debian: https://bugs.debian.org/732440
+
+Bug 695031: don't assume we can read a font file
+
+When we scan system fonts, we were assuming fonts found would be in a format
+Ghostscript understands. This is not necessarily the case.
+
+So put the minimal parsing call to get the font's name in a stopped context,
+so we can skip the file it's not an understandable format. And clean up the
+stack in the event we try such a file.
+
+No cluster differences.
+---
+
+--- a/Resource/Init/gs_fonts.ps
b/Resource/Init/gs_fonts.ps
+@@ -385,12 +385,20 @@
+ pop pop pop
+ }{
+ % we could open the font file
+-.findfontname
+-not { dup 0 get } if % stack: (newname) [ (name) (path) ]
+-% DEBUG { ( found ) print dup print (\n) print flush } if
+-% add entry to the fontmap
+-1 index exch 0 exch dup type /nametype ne {cvn} if put
+-aload pop .definefontmap
++mark 2 1 roll
++{.findfontname} stopped
++{
++ cleartomark
++ pop pop
++}
++{
++ 3 -1 roll pop
++ not { dup 0 get } if % stack: (newname) [ (name) (path) ]
++ % DEBUG { ( found ) print dup print (\n) print flush } if
++ % add entry to the fontmap
++ 1 index exch 0 exch dup type /nametype ne {cvn} if put
++ aload pop .definefontmap
++} ifelse
+ } ifelse
+ } forall
+ } if
diff -Nru ghostscript-9.06~dfsg/debian/patches/series ghostscript-9.06~dfsg/debian/patches/series
--- ghostscript-9.06~dfsg/debian/patches/series 2014-08-27 03:59:17.0 +0200
+++ ghostscript-9.06~dfsg/debian/patches/series 2015-01-07 08:25:44.0 +0100
@@ -3,6 +3,7 @@
020121130~a3d00da.patch
020130619~1b87b82.patch
020130619~daceba6.patch
+020140211~f4584b0.patch
1001_document_inkcov_device.patch
2001_docdir_fix_for_debian.patch
2002_gs_man_fix_debian.patch
From: Chris Liddell chris.lidd...@artifex.com
Date: Tue, 11 Feb 2014 15:15:56 + (+)
Subject: Bug 695031: don't assume we can read a font file
X-Git-Tag: ghostpdl-9.12rc1~50
X-Git-Url: http://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff_plain;h=f4584b0e162a96ec143f0057de63c116e649e02b
Bug-Debian: https://bugs.debian.org/732440
Bug 695031: don't assume we can read a font file
When we scan system fonts, we were assuming fonts found would be in a format
Ghostscript understands. This is not necessarily the case.
So put the minimal parsing call to get the font's name in a stopped context,
so we can skip the file it's not an understandable format. And clean up the
stack in the event we try such a file.
No cluster differences.
---
--- a/Resource/Init/gs_fonts.ps
+++ b/Resource/Init/gs_fonts.ps
@@ -385,12 +385,20 @@
pop pop pop
}{
% we could open the font file
-.findfontname
-not { dup 0 get } if % stack: (newname) [ (name) (path) ]
-% DEBUG { ( found ) print dup print (\n) print flush } if
-% add entry to the fontmap
-1 index exch 0 exch dup type /nametype ne {cvn} if put
-