Bug#373614: Patch
Package: gs-esp
Version: 8.15.1.dfsg.1-2.1
Followup-For: Bug #373614
I have tested that attached patch fixes the problem (rebuilt 8.15.1.dfsg.1-2.1 with it).
-- System Information:
Debian Release: testing/unstable
APT prefers testing
APT policy: (990, 'testing'), (900, 'stable')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.16-2-686-smp
Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1)
Versions of packages gs-esp depends on:
ii gs-common 0.3.9 Common files for different Ghostsc
ii libc6 2.3.6-15 GNU C Library: Shared libraries
ii libcupsimage2 1.2.1-3 Common UNIX Printing System(tm) -
ii libcupsys2 1.2.1-3 Common UNIX Printing System(tm) -
ii libgnutls13 1.4.0-3 the GNU TLS library - runtime libr
ii libice6 1:1.0.0-3 X11 Inter-Client Exchange library
ii libjpeg62 6b-13 The Independent JPEG Group's JPEG
ii libpaper1 1.1.19 Library for handling paper charact
ii libpng12-0 1.2.8rel-5.1 PNG library - runtime
ii libsm6 1:1.0.0-4 X11 Session Management library
ii libtiff4 3.8.2-5 Tag Image File Format (TIFF) libra
ii libx11-6 2:1.0.0-7 X11 client-side library
ii libxext6 1:1.0.0-4 X11 miscellaneous extension librar
ii libxt6 1:1.0.0-5 X11 toolkit intrinsics library
ii zlib1g 1:1.2.3-13 compression library - runtime
Versions of packages gs-esp recommends:
ii gsfonts 8.14+v8.11+urw-0.2 Fonts for the Ghostscript interpre
pn psfontmgr <none> (no description available)
-- no debconf information
--- src/gdevpdfj.c
+++ src/gdevpdfj.c 2006-01-13 14:18:55.000000000 +0000
@@ -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;
--- src/gdevpdfo.c
+++ src/gdevpdfo.c 2006-01-13 14:20:54.000000000 +0000
@@ -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;
}
--- src/gdevpdfr.c
+++ src/gdevpdfr.c 2006-01-13 14:17:12.000000000 +0000
@@ -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;
Reply to: