Hello community,
here is the log from the commit of package epson-inkjet-printer-escpr for
openSUSE:Factory checked in at 2017-06-27 10:21:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/epson-inkjet-printer-escpr (Old)
and /work/SRC/openSUSE:Factory/.epson-inkjet-printer-escpr.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "epson-inkjet-printer-escpr"
Tue Jun 27 10:21:33 2017 rev:21 rq:506265 version:1.6.13
Changes:
--------
---
/work/SRC/openSUSE:Factory/epson-inkjet-printer-escpr/epson-inkjet-printer-escpr.changes
2017-04-30 21:23:48.537452026 +0200
+++
/work/SRC/openSUSE:Factory/.epson-inkjet-printer-escpr.new/epson-inkjet-printer-escpr.changes
2017-06-27 10:21:47.734757905 +0200
@@ -1,0 +2,11 @@
+Sun Jun 18 16:31:54 UTC 2017 - [email protected]
+
+- call gzip -n to make build fully reproducible
+
+-------------------------------------------------------------------
+Mon Jun 12 22:31:03 UTC 2017 - [email protected]
+
+- add bug_x86_64.patch which should fix the segfault that some
+ users are experiencing
+
+-------------------------------------------------------------------
New:
----
bug_x86_64.patch
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ epson-inkjet-printer-escpr.spec ++++++
--- /var/tmp/diff_new_pack.kiGIpn/_old 2017-06-27 10:21:48.614633548 +0200
+++ /var/tmp/diff_new_pack.kiGIpn/_new 2017-06-27 10:21:48.618632982 +0200
@@ -51,6 +51,9 @@
License: GPL-2.0
Group: Hardware/Printing
Source0: epson-inkjet-printer-escpr-%{version}-1lsb3.2.tar.gz
+# PATCH-FIX-UPSTREAM bug_x86_64.patch -- fix a segfault on x64_64 (probably
manifested with GCC7 use)
+#
https://aur.archlinux.org/cgit/aur.git/plain/bug_x86_64.patch?h=epson-inkjet-printer-escpr
+Patch0: bug_x86_64.patch
# This software is a filter program used with CUPS:
Requires: cups
# Install into this non-root directory (required when norootforbuild is used):
@@ -75,6 +78,7 @@
%prep
# Be quiet when unpacking:
%setup -q
+%patch0 -p1
%build
# Set our preferred architecture-specific flags for the compiler and linker:
@@ -119,7 +123,7 @@
for p in *.ppd
do echo -n "$p: "
grep -E -v '^\*UIConstraints:|^\*NonUIConstraints:|^\*cupsFilter:' $p |
cupstestppd - || true
- gzip $p
+ gzip -n9 $p
done
# Switch back to the usual build log messages:
set -x
++++++ bug_x86_64.patch ++++++
diff -Naur epson-inkjet-printer-escpr-1.6.9/src/filter.c
epson-inkjet-printer-escpr-1.6.9-fixed/src/filter.c
--- epson-inkjet-printer-escpr-1.6.9/src/filter.c 2016-09-21
03:55:30.000000000 +0200
+++ epson-inkjet-printer-escpr-1.6.9-fixed/src/filter.c 2016-10-07
22:07:23.965463021 +0200
@@ -34,6 +34,8 @@
#include "epson-protocol.h"
#include "epson-escpr-api.h"
#include "epson-escpr-mem.h"
+#include "epson-escpr-services.h"
+#include "epson-escpage.h"
#include "err.h"
#include "mem.h"
@@ -42,6 +44,11 @@
#include "libprtX.h"
#include "optBase.h"
#include "linux_cmn.h"
+#include "xfifo.h"
+
+extern EPS_ERR_CODE SetupJobAttrib (const EPS_JOB_ATTRIB*);
+extern EPS_ERR_CODE SendStartJob ();
+extern EPS_ERR_CODE PrintBand (const EPS_UINT8*, EPS_UINT32, EPS_UINT32*);
#define WIDTH_BYTES(bits) (((bits) + 31) / 32 * 4)
@@ -380,10 +387,10 @@
}else{
debug_msg("pageStartJob() success");
}
-
+
printJob.jobStatus = EPS_STATUS_ESTABLISHED;
- int printHeight = 0;
-///////////////////////////////////////////////////////////////////////////////////////////////////////////
+ EPS_UINT32 printHeight = 0;
+///////////////////////////////////////////////////////////////////////////////////////////////////////////
print_area_x = printJob.printableAreaWidth;
print_area_y = printJob.printableAreaHeight;
@@ -535,7 +542,7 @@
memcpy(rever_buf + k*3,
startpage + pos + (bandBmp.widthBytes - 6) - k*3, 3);
}
}
- PrintBand (rever_buf, bandBmp.widthBytes,
&printHeight);
+ PrintBand ((const EPS_UINT8 *)rever_buf,
bandBmp.widthBytes, &printHeight);
pos -= bandBmp.widthBytes;
}
@@ -642,17 +649,17 @@
}
}
}
-
+
band_line_count ++;
-
+
if (band_line_count >= band_line)
{
printHeight = band_line_count;
PrintBand (bandBmp.bits,
bandBmp.widthBytes, &printHeight);
#if (HAVE_PPM)
fp = fopen(ppmfilename, "a+");
- int i=0;
- for(i=0;
i<bytes_per_line/byte_par_pixel*3; i++){
+ int i=0;
+ for(i=0;
i<bytes_per_line/byte_par_pixel*3; i++){
fprintf(fp, "%u ", (unsigned
char)bandBmp.Bits[i]);
}
fprintf(fp, "\n");
@@ -831,7 +838,7 @@
/* Get number of pages */
char page_num;
- read (STDIN_FILENO, &page_num, 1);
+ (void)read (STDIN_FILENO, &page_num, 1);
/* Others */
jobAttr.apfAutoCorrect = EPS_APF_ACT_STANDARD;
@@ -881,7 +888,7 @@
// fwrite (pBuf, cbBuf, 1, outfp);
- XFIFOWrite(context, pBuf, cbBuf);
+ XFIFOWrite(context, (char *)pBuf, cbBuf);
return 1;
}
diff -Naur epson-inkjet-printer-escpr-1.6.9/src/mem.c
epson-inkjet-printer-escpr-1.6.9-fixed/src/mem.c
--- epson-inkjet-printer-escpr-1.6.9/src/mem.c 2016-09-21 03:55:30.000000000
+0200
+++ epson-inkjet-printer-escpr-1.6.9-fixed/src/mem.c 2016-10-07
22:07:59.519366574 +0200
@@ -24,6 +24,7 @@
#include <stdlib.h>
#include "mem.h"
+#include "err.h"
void *
mem_malloc (unsigned int size, bool_t crit)