diff options
author | Mamoru Komachi <usata@gentoo.org> | 2003-07-25 16:26:26 +0000 |
---|---|---|
committer | Mamoru Komachi <usata@gentoo.org> | 2003-07-25 16:26:26 +0000 |
commit | db903aa6ce0f85da119198ac7de79f486b2b39e8 (patch) | |
tree | a93103e3025413f03dec8e854300bd9101a82256 /app-text | |
parent | Fixed kochi-substitute rendering crash issue (diff) | |
download | gentoo-2-db903aa6ce0f85da119198ac7de79f486b2b39e8.tar.gz gentoo-2-db903aa6ce0f85da119198ac7de79f486b2b39e8.tar.bz2 gentoo-2-db903aa6ce0f85da119198ac7de79f486b2b39e8.zip |
Fixed kochi-substitute rendering crash issue
Diffstat (limited to 'app-text')
-rw-r--r-- | app-text/ghostscript/ChangeLog | 6 | ||||
-rw-r--r-- | app-text/ghostscript/Manifest | 4 | ||||
-rw-r--r-- | app-text/ghostscript/files/gs7.05.6-kochi-substitute.patch | 117 | ||||
-rw-r--r-- | app-text/ghostscript/ghostscript-7.05.6-r3.ebuild | 7 |
4 files changed, 129 insertions, 5 deletions
diff --git a/app-text/ghostscript/ChangeLog b/app-text/ghostscript/ChangeLog index e74eada2601a..bddc4f54043a 100644 --- a/app-text/ghostscript/ChangeLog +++ b/app-text/ghostscript/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for app-text/ghostscript # Copyright 2002-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-text/ghostscript/ChangeLog,v 1.36 2003/07/16 17:42:54 lanius Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-text/ghostscript/ChangeLog,v 1.37 2003/07/25 16:26:18 usata Exp $ + + 26 Jul 2003; Mamoru KOMACHI <usata@gentoo.org> ghostscript-7.05.6-r3.ebuild, + files/gs7.05.6-kochi-substitute.patch: + Fixed kochi-substitute rendering crash issue 16 Jul 2003; <lanius@gentoo.org> ghostscript-7.05.6-r3.ebuild: fixed missing ${S} (#24595) diff --git a/app-text/ghostscript/Manifest b/app-text/ghostscript/Manifest index cc22e3e7cf31..7462e3c6662c 100644 --- a/app-text/ghostscript/Manifest +++ b/app-text/ghostscript/Manifest @@ -1,6 +1,6 @@ -MD5 98785eda10f9306eca52d80aa6814aa4 ChangeLog 6616 +MD5 f696b477ebd72fb8d4b86bbc48ff3f12 ChangeLog 6783 MD5 26b4b081d538c195dc39bcb2ec8e6f3a metadata.xml 161 -MD5 9289d145a4f9896a525ded2bcbebf3d8 ghostscript-7.05.6-r3.ebuild 3115 +MD5 35e4e0acfc419f03cbae66044308a0f1 ghostscript-7.05.6-r3.ebuild 3114 MD5 823888ea04fc2c6c118a752107fe6607 ghostscript-7.05.6-r2.ebuild 2718 MD5 5f1b04ca58928a339b749703e067e2ba files/gs7.05.6-kochi-substitute.patch 3774 MD5 c63f6d71a403dbc72265831386b84eb0 files/digest-ghostscript-7.05.6-r2 359 diff --git a/app-text/ghostscript/files/gs7.05.6-kochi-substitute.patch b/app-text/ghostscript/files/gs7.05.6-kochi-substitute.patch new file mode 100644 index 000000000000..70f8e1fda27f --- /dev/null +++ b/app-text/ghostscript/files/gs7.05.6-kochi-substitute.patch @@ -0,0 +1,117 @@ +--- lib/gs_ttf.ps.orig Sat Apr 12 23:02:38 2003 ++++ lib/gs_ttf.ps Fri Jul 25 13:25:33 2003 +@@ -575,7 +575,7 @@ + (maxp) 1 index + (name) 1 index + (OS/2) 1 index +- (post) 1 index ++ (post) { .readbigtable } + (vhea) 1 index + % Big tables + (glyf) { .readbigtable } +@@ -918,10 +918,17 @@ + DEBUG { (fontname ) print fontname = } if + % Stack: ... /FontInfo mark key1 value1 ... + post null ne { +- /ItalicAngle post 4 gets32 65536.0 div +- /isFixedPitch post 12 getu32 0 ne +- /UnderlinePosition post 8 gets16 upem div +- /UnderlineThickness post 10 gets16 upem div ++ post type /arraytype eq { ++ % this post table is a big table. /post should be [(...) ...] ++ % data we actually need here should be first one in array. ++ /posttable post 1 get def ++ } { ++ /posttable post def ++ } ifelse ++ /ItalicAngle posttable 4 gets32 65536.0 div ++ /isFixedPitch posttable 12 getu32 0 ne ++ /UnderlinePosition posttable 8 gets16 upem div ++ /UnderlineThickness posttable 10 gets16 upem div + } if + counttomark 0 ne { .dicttomark } { pop pop } ifelse + /XUID [orgXUID 42 curxuid] +@@ -1119,41 +1126,52 @@ + %(gsubofl: ) print gsubofl = + (gsuboll: ) print gsuboll = + } if +- dup /gsubfmt exch gsuboll 0 add getu16 def ++ % /gsuboll should be pointed out the LookupList table, but not Lookup table. ++ % so this is wrong: dup /gsubfmt exch gsuboll 0 add getu16 def ++ dup /gsublc exch gsuboll 0 add getu16 def + DEBUG { +- (gsubfmt: ) print gsubfmt = ++ (gsublc: ) print gsublc = + } if +-% gsubver 16#00010000 eq { % ifelse +- gsubfmt 2 eq { % ifelse +- dup /gsubocv exch gsuboll 2 add getu16 def +- dup /gsubglc exch gsuboll 4 add getu16 def +- % hacked by suzuki toshiya at 2001/3/6 +- %dup /gsubvog exch gsuboll 6 add gsubglc getinterval def +- %dup /gsubhog exch gsuboll gsubocv add 4 add gsubglc getinterval def +- dup /gsubvog exch gsuboll 6 add gsubglc 2 mul getinterval def +- dup /gsubhog exch gsuboll gsubocv add 4 add gsubglc 2 mul getinterval def ++ gsublc 0 ne { ++ 0 1 gsublc 1 sub { ++ 2 mul /gsubolt exch 2 index exch gsuboll 2 add add getu16 gsuboll add def ++ dup /gsubfmt exch gsubolt 0 add getu16 def + DEBUG { +- (gsubocv: ) print gsubocv = +- (gsubglc: ) print gsubglc = +- +- (gsubhog->gsubvog ) = +- 0 2 gsubhog length 2 sub { % for +- dup +- gsubhog exch getu16 =only +- (->) =only +- gsubvog exch getu16 = +- } for ++ (gsubfmt: ) print gsubfmt = + } if +- /gsubh2v << 0 2 gsubhog length 2 sub { +- dup gsubhog exch getu16 +- exch gsubvog exch getu16 +- } for >> def +- } { +- %(UNKNOWN GSUB FORMAT.) = flush +- } ifelse +-% } { +-% (ILLEGAL GSUB VERSION.) = flush +-% } ifelse ++% gsubver 16#00010000 eq { % ifelse ++ gsubfmt 2 eq { % ifelse ++ dup /gsubocv exch gsubolt 2 add getu16 def ++ dup /gsubglc exch gsubolt 4 add getu16 def ++ % hacked by suzuki toshiya at 2001/3/6 ++ %dup /gsubvog exch gsubolt 6 add gsubglc getinterval def ++ %dup /gsubhog exch gsubolt gsubocv add 4 add gsubglc getinterval def ++ dup /gsubvog exch gsubolt 6 add gsubglc 2 mul getinterval def ++ dup /gsubhog exch gsubolt gsubocv add 4 add gsubglc 2 mul getinterval def ++ DEBUG { ++ (gsubocv: ) print gsubocv = ++ (gsubglc: ) print gsubglc = ++ ++ (gsubhog->gsubvog ) = ++ 0 2 gsubhog length 2 sub { % for ++ dup ++ gsubhog exch getu16 =only ++ (->) =only ++ gsubvog exch getu16 = ++ } for ++ } if ++ /gsubh2v << 0 2 gsubhog length 2 sub { ++ dup gsubhog exch getu16 ++ exch gsubvog exch getu16 ++ } for >> def ++ } { ++ %(UNKNOWN GSUB FORMAT.) = flush ++ } ifelse ++% } { ++% (ILLEGAL GSUB VERSION.) = flush ++% } ifelse ++ } for ++ } if + pop + } if + } bind def diff --git a/app-text/ghostscript/ghostscript-7.05.6-r3.ebuild b/app-text/ghostscript/ghostscript-7.05.6-r3.ebuild index 83e92fec398c..a06fb0f881da 100644 --- a/app-text/ghostscript/ghostscript-7.05.6-r3.ebuild +++ b/app-text/ghostscript/ghostscript-7.05.6-r3.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2003 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-text/ghostscript/ghostscript-7.05.6-r3.ebuild,v 1.4 2003/07/23 09:31:25 lanius Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-text/ghostscript/ghostscript-7.05.6-r3.ebuild,v 1.5 2003/07/25 16:26:18 usata Exp $ inherit eutils @@ -44,7 +44,10 @@ src_unpack() { ## patch -p0 < ${FILESDIR}/png.diff || die "patch failed" - use cjk && epatch ${FILESDIR}/gs${PV}-cjk.diff + if [ `use cjk` ] ; then + epatch ${FILESDIR}/gs${PV}-cjk.diff + epatch ${FILESDIR}/gs${PV}-kochi-substitute.patch + fi # man page patch from absinthe@pobox.com (Dylan Carlson) bug #14150 # patch -p0 ${S}/man/gs.1 < ${FILESDIR}/${P}.man.patch || die |