commit e3dd0ac936eb8076d6ff0c227a77627fed447d98
parent a4caeca88b7dff2e8a54e26aef1a812c95206e95
Author: sin <sin@2f30.org>
Date: Wed, 1 Oct 2014 15:41:55 +0100
Break after we cancel the rx transfer
Diffstat:
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/ratox.c b/ratox.c
@@ -549,12 +549,17 @@ cbfiledata(Tox *m, int32_t frnum, uint8_t fnum, const uint8_t *data, uint16_t le
while (len > 0) {
n = write(f->fd[FFILE_OUT], &data[wrote], len);
if (n < 0) {
- if (errno == EPIPE)
+ if (errno == EPIPE) {
cancelrxtransfer(f);
- if (errno == EWOULDBLOCK)
+ break;
+ } else if (errno == EWOULDBLOCK) {
continue;
- } else if (n == 0)
+ }
+ weprintf("write:");
break;
+ } else if (n == 0) {
+ break;
+ }
wrote += n;
len -= n;
}