Package: hplip / 3.22.10+dfsg0-2

0042-Replace-rubbish-pstotiff-filter.patch Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
From: Tim Waugh <twaugh@fedoraproject.org>
Date: Fri, 31 Jan 2020 12:10:47 +0100
Subject: Replace rubbish pstotiff filter

Bug-Ubuntu: #528394
Origin: https://src.fedoraproject.org/rpms/hplip/blob/master/f/hplip-pstotiff-is-rubbish.patch
---
 fax/filters/pstotiff | 61 ++++++++++++++--------------------------------------
 1 file changed, 16 insertions(+), 45 deletions(-)

diff --git a/fax/filters/pstotiff b/fax/filters/pstotiff
index bd2ff3f..819bf92 100755
--- a/fax/filters/pstotiff
+++ b/fax/filters/pstotiff
@@ -1,45 +1,16 @@
-#!/usr/bin/env python
-
-import os
-import os.path
-import time 
-import sys
-import tempfile
-
-PY3 = sys.version_info[0] == 3
-
-READ_SIZE = 8192
-
-total_bytes_read = 0
-temp_in_file = "-"
-
-if (len(sys.argv) > 6):
-   temp_in_file = sys.argv[6] 
-
-temp_out_handle, temp_out_fname = tempfile.mkstemp()
-
-font = "-I/usr/share/cups/fonts"
-device = "-sDEVICE=tiffg4 -dMaxStripSize=0 -r204x196 -dNOPAUSE -dBATCH -dSAFER -dPARANOIDSAFER -dSHORTERRORS -dWRITESYSTEMDICT -dGHOSTSCRIPT -sstdout=%stderr -sOutputFile=" + temp_out_fname + " " + temp_in_file
-
-gs_command = "/usr/bin/gs" + " " + font + " " + device
-
-exit_code = os.system(gs_command)
-
-file_len = os.stat(temp_out_fname).st_size
-if (file_len < READ_SIZE):
-    READ_SIZE = file_len
-
-os.close(temp_out_handle)
-
-out_handle = open(temp_out_fname, mode='rb')
-while (total_bytes_read < file_len):
-      data = out_handle.read(READ_SIZE)
-      if PY3:
-          sys.stdout.buffer.write(data)
-      else:
-          sys.stdout.write(data)
-      total_bytes_read += READ_SIZE
-out_handle.close()
-
-os.remove(temp_out_fname)
-sys.exit(0)
+#!/bin/sh
+if [ $# -lt 6 ]; then
+  IN=-_
+else
+  IN="$6"
+fi
+
+TMPFILE=`mktemp /tmp/pstotiff.XXXXXX` || exit 1
+gs -I/usr/share/cups/fonts -sDEVICE=tiffg4 -dMaxStripSize=0 -r204x196 \
+    -dNOPAUSE -dBATCH -dSAFER -dPARANOIDSAFER \
+   -dSHORTERRORS -dWRITESYSTEMDICT -dGHOSTSCRIPT \
+   -sstdout=%stderr -sOutputFile="$TMPFILE" "$IN"
+RET=$?
+cat "$TMPFILE"
+rm -f "$TMPFILE"
+exit $RET