gnutv: exit on EPIPE/SIGPIPE
PATCH 1/1 gnutv: exit on EPIPE/SIGPIPE
When using gnutv with "-out stdout" it doesn't exit when it's reader quits (i.e. and it gets an EPIPE/SIGPIPE).
Signed-off-by Brian J. Murrell <[email protected]>
---
util/gnutv/gnutv_data.c +4 -1
@@ -265,7 +265,10 @@while (written < size) {int tmp =write (outfd, buf + written, size - written);if (tmp ==-1 ) { -if (errno !=EINTR ) { +if (errno ==EPIPE ) { +fprintf (stderr,"processing EPIPE\n" ); +return 0 ; + }else if (errno !=EINTR ) {fprintf (stderr,"Write error: %m\n" );break ; }
util/gnutv/gnutv.c.new renamed from util/gnutv/gnutv.c +1 -1
@@ -262,7 +262,7 @@ // setup any signals signal(SIGINT, signal_handler); - signal(SIGPIPE, SIG_IGN); + signal(SIGPIPE, signal_handler); // start the CA stuff gnutv_ca_params.adapter_id = adapter_id;