diff options
Diffstat (limited to 'src/util/backup_file.c')
-rw-r--r-- | src/util/backup_file.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/util/backup_file.c b/src/util/backup_file.c index cf9ddf30..99079327 100644 --- a/src/util/backup_file.c +++ b/src/util/backup_file.c @@ -86,7 +86,7 @@ int backup_file(const char *src_file, int dbglvl) while (1) { num = read(src_fd, buf, BUFFER_SIZE); if (num < 0) { - if (errno == EINTR) continue; + if (errno == EINTR || errno == EAGAIN) continue; ret = errno; DEBUG(dbglvl, ("Error (%d [%s]) reading from source %s\n", ret, strerror(ret), src_file)); @@ -101,7 +101,7 @@ int backup_file(const char *src_file, int dbglvl) errno = 0; num = write(dst_fd, &buf[pos], count); if (num < 0) { - if (errno == EINTR) continue; + if (errno == EINTR || errno == EAGAIN) continue; ret = errno; DEBUG(dbglvl, ("Error (%d [%s]) writing to destination %s\n", ret, strerror(ret), dst_file)); |