rpms/ghostscript/FC-5 espgs-pdfwrite.patch, NONE, 1.1 ghostscript.spec, 1.103, 1.104

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Thu Apr 6 11:01:27 UTC 2006


Author: twaugh

Update of /cvs/dist/rpms/ghostscript/FC-5
In directory cvs.devel.redhat.com:/tmp/cvs-serv21935

Modified Files:
	ghostscript.spec 
Added Files:
	espgs-pdfwrite.patch 
Log Message:
* Thu Apr  6 2006 Tim Waugh <twaugh at redhat.com> 8.15.1-7.1
- Fix pdfwrite (bug #187834).
- Put pstopxl in both lib and lib64 CUPS filter directories on lib64
  platforms.


espgs-pdfwrite.patch:
 gdevpdfj.c |    3 +++
 gdevpdfo.c |    5 ++++-
 gdevpdfr.c |    3 ++-
 3 files changed, 9 insertions(+), 2 deletions(-)

--- NEW FILE espgs-pdfwrite.patch ---
--- espgs-8.15.1/src/gdevpdfr.c.pdfwrite	2005-08-11 20:57:14.000000000 +0100
+++ espgs-8.15.1/src/gdevpdfr.c	2006-04-06 10:20:33.000000000 +0100
@@ -309,7 +309,8 @@
 	stream_PSSD_state ss;
 	int status;
 
-	s_PSSD_init((stream_state *)&ss);
+	s_PSSD_partially_init_inline(&ss);
+	ss.from_string = true;
 	r.ptr = p;		/* skip the '(' */
 	r.limit = end - 1;
 	w.limit = buf + sizeof(buf) - 1;
--- espgs-8.15.1/src/gdevpdfj.c.pdfwrite	2005-08-11 20:57:14.000000000 +0100
+++ espgs-8.15.1/src/gdevpdfj.c	2006-04-06 10:20:33.000000000 +0100
@@ -346,6 +346,9 @@
     pbw->dev = (gx_device_psdf *)pdev;
     pbw->memory = pdev->pdf_memory;
     pbw->target = NULL; /* We don't need target with cos_write_stream. */
+
+    return 0;	/* Code below seems to break drawings */
+
     pdev->strm = pbw->strm;
     code = psdf_begin_binary((gx_device_psdf *) pdev, pbw);
     pdev->strm = save_strm;
--- espgs-8.15.1/src/gdevpdfo.c.pdfwrite	2005-08-11 20:57:14.000000000 +0100
+++ espgs-8.15.1/src/gdevpdfo.c	2006-04-06 10:20:33.000000000 +0100
@@ -1045,13 +1045,16 @@
 	const cos_value_t *v = cos_dict_find(pcd1, pcde0->key.data, pcde0->key.size);
 	int code;
 
+	if (cos_type(v->contents.object) != cos_type_dict)
+	    return false;	/* Should _never_ happen */
+
 	if (v == NULL)
 	    return false;
 	code = cos_value_equal(&pcde0->value, v, pdev);
 	if (code < 0)
 	    return code;
 	if (!code)
-		    return false;
+	    return false;
     }
     return true;
 }


Index: ghostscript.spec
===================================================================
RCS file: /cvs/dist/rpms/ghostscript/FC-5/ghostscript.spec,v
retrieving revision 1.103
retrieving revision 1.104
diff -u -r1.103 -r1.104
--- ghostscript.spec	2 Mar 2006 14:58:45 -0000	1.103
+++ ghostscript.spec	6 Apr 2006 11:01:24 -0000	1.104
@@ -5,7 +5,7 @@
 Name: ghostscript
 Version: %{gs_ver}
 
-Release: 7
+Release: 7.1
 
 License: GPL
 URL: http://www.cups.org/espgs/
@@ -27,6 +27,7 @@
 Patch9: ghostscript-split-font-configuration.patch
 Patch10: ghostscript-big-cmap-post.patch
 Patch11: ghostscript-krgb.patch
+Patch12: espgs-pdfwrite.patch
 
 Requires: zlib, libpng, glib2
 Requires: urw-fonts >= 1.1, ghostscript-fonts
@@ -110,6 +111,9 @@
 # Updated KRGB patch for gdevijs.
 %patch11 -p1 -b .krgb
 
+# Fix pdfwrite (bug #187834).
+%patch12 -p1 -b .pdfwrite
+
 # Convert manual pages to UTF-8
 from8859_1() {
 	iconv -f iso-8859-1 -t utf-8 < "$1" > "${1}_"
@@ -211,6 +215,21 @@
 # Don't ship files that get shipped in the cups package.
 rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/cups
 rm -f $RPM_BUILD_ROOT%{_libdir}/cups/filter/pstoraster
+rm -f $RPM_BUILD_ROOT/usr/lib/cups/filter/pstoraster
+%if "%_libdir" == "/usr/lib64"
+if [ -f $RPM_BUILD_ROOT/usr/lib64/cups/filter/pstopxl ] && \
+   [ ! -f $RPM_BUILD_ROOT/usr/lib/cups/filter/pstopxl ]
+then
+  mkdir -p $RPM_BUILD_ROOT/usr/lib/cups/filter
+  cp -a $RPM_BUILD_ROOT/usr/lib{64,}/cups/filter/pstopxl
+fi
+if [ -f $RPM_BUILD_ROOT/usr/lib/cups/filter/pstopxl ] && \
+   [ ! -f $RPM_BUILD_ROOT/usr/lib64/cups/filter/pstopxl ]
+then
+  mkdir -p $RPM_BUILD_ROOT/usr/lib64/cups/filter
+  cp -a $RPM_BUILD_ROOT/usr/lib{,64}/cups/filter/pstopxl
+fi
+%endif
 
 # Don't ship two copies of Resource.  Just the versioned one will do.
 rm -rf $RPM_BUILD_ROOT%{_datadir}/ghostscript/Resource
@@ -246,7 +265,10 @@
 %{_libdir}/libgs.so
 %{_libdir}/libijs*.so*
 %{_libdir}/%{name}/%{gs_dot_ver}
+%if "%_libdir" == "/usr/lib64"
 %{_libdir}/cups/filter/pstopxl
+%endif
+/usr/lib/cups/filter/pstopxl
 %{_datadir}/cups/model/pxl*
 
 %files gtk
@@ -267,6 +289,11 @@
 %postun -p /sbin/ldconfig
 
 %changelog
+* Thu Apr  6 2006 Tim Waugh <twaugh at redhat.com> 8.15.1-7.1
+- Fix pdfwrite (bug #187834).
+- Put pstopxl in both lib and lib64 CUPS filter directories on lib64
+  platforms.
+
 * Thu Mar  2 2006 Tim Waugh <twaugh at redhat.com> 8.15.1-7
 - BuildRequires: gnutls-devel
 - Updated KRGB patch for gdevijs.




More information about the fedora-cvs-commits mailing list