Revert "libspark/record: always fill read buffer"

This reverts commit d92ac0e451.


Origin commit data
------------------
Branch: master
Commit: 38f9e896c5
Author: max_10 <max_10@gmx.de>
Date: 2014-07-07 (Mon, 07 Jul 2014)



------------------
This commit was generated by Migit
This commit is contained in:
max_10
2014-07-07 21:01:47 +02:00
parent e131af286c
commit 7650d19d0f

View File

@@ -244,37 +244,29 @@ void cRecord::RecordThread()
while (exit_flag == RECORD_RUNNING) while (exit_flag == RECORD_RUNNING)
{ {
uint8_t *bufstart = io_buf[chunk]; ssize_t s = dmx->Read(io_buf[chunk], readsize, 50);
int left = readsize; lt_debug("%s: Read chunk=%d size=%d\n", __func__, chunk, s);
ssize_t len = 0; if (s < 0)
while ((exit_flag == RECORD_RUNNING) && (left > 0)) { {
int s = dmx->Read(bufstart, left, 50); if (errno != EAGAIN && (errno != EOVERFLOW || overflow_count > 63 /* arbitrary */))
lt_debug("%s: Read chunk=%d size=%d\n", __func__, chunk, s);
if (s < 0)
{ {
if (errno != EAGAIN && (errno != EOVERFLOW || overflow_count > 63 /* arbitrary */)) lt_info("%s: read failed: %m\n", __func__);
{ exit_flag = RECORD_FAILED_READ;
lt_info("%s: read failed: %m\n", __func__); break;
exit_flag = RECORD_FAILED_READ;
break;
}
if (!overflow_count)
lt_info("%s: dmx->Read(): %m\n", __func__);
overflow_count++;
continue;
}
len += s;
left -= s;
bufstart += s;
if (overflow_count) {
lt_info("%s: Overflow cleared after %d iterations\n", __func__, overflow_count);
overflow_count = 0;
} }
if (!overflow_count)
lt_info("%s: dmx->Read(): %m\n", __func__);
overflow_count++;
continue;
} }
if (!len) if (overflow_count) {
lt_info("%s: Overflow cleared after %d iterations\n", __func__, overflow_count);
overflow_count = 0;
}
if (!s)
continue; continue;
io_len[chunk] = len; io_len[chunk] = s;
sem_post(&sem); sem_post(&sem);
chunk++; chunk++;
chunk %= RECORD_WRITER_CHUNKS; chunk %= RECORD_WRITER_CHUNKS;