X-Git-Url: http://git.zerfleddert.de/cgi-bin/gitweb.cgi/record-dvb/blobdiff_plain/460e6d22fd475792a771686c693bc251912517de..fbc24ab023eb1ae6572fccff3fa1140c3e01c8b7:/record-dvb.c diff --git a/record-dvb.c b/record-dvb.c index 63102cf..b27ce74 100644 --- a/record-dvb.c +++ b/record-dvb.c @@ -13,7 +13,7 @@ #include "http.h" #include "mcast.h" -#define CHUNKSIZE 8192 +#define CHUNKSIZE 1500 void record(int(*open_fn)(char *), char *url, char *outfile, int duration) { @@ -40,9 +40,9 @@ void record(int(*open_fn)(char *), char *url, char *outfile, int duration) do { if ((bytes = recv(in, buffer, CHUNKSIZE, 0)) < 1) { /* TODO: Insert better connection-loss recovery here */ - in = (*open_fn)(url); + if ((in = (*open_fn)(url)) < 0) + sleep(1); } - written = 0; do { if ((i = write(out, buffer, bytes-written)) < 0) {