ALT Linux repositórios
S: | 3.23.8-alt1 |
5.0: | 2.8.10-alt3 |
4.1: | 2.8.10-alt2.M41.1 |
4.0: | 2.7.12-alt2.M40.1 |
+backports: | 2.8.10-alt2.M40.1 |
3.0: | |
+backports: | 1.6.6a-alt0.M30.4.1 |
Group :: Edição
RPM: hplip
Main Changelog Spec Patches Sources Download Gear Bugs e FR Repocop
Patch: hplip-hpcups-sigpipe.patch
Download
Download
diff -up hplip-3.9.8/prnt/hpijs/services.cpp.hpcups-sigpipe hplip-3.9.8/prnt/hpijs/services.cpp
--- hplip-3.9.8/prnt/hpijs/services.cpp.hpcups-sigpipe 2009-08-04 22:35:41.000000000 +0100
+++ hplip-3.9.8/prnt/hpijs/services.cpp 2009-10-29 11:56:23.015022337 +0000
@@ -29,6 +29,7 @@
POSSIBILITY OF SUCH DAMAGE.
\*****************************************************************************/
+#include <errno.h>
#include <sys/stat.h>
#include <stdio.h>
#include <stdlib.h>
@@ -382,8 +383,16 @@ DRIVER_ERROR UXServices::ToDevice(const
if (write(OutputPath, pBuffer, *Count) != (ssize_t)*Count)
{
static int cnt=0;
- if (cnt++ < 5)
+ if (cnt < 5)
+ {
+ cnt++;
BUG("unable to write to output, fd=%d, count=%d: %m\n", OutputPath, *Count);
+ }
+
+ if (errno == EPIPE)
+ /* The backend has exited. There's no recovering from that. */
+ exit (1);
+
return IO_ERROR;
}