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;