X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fbuffer.c;h=949505c0b912ceb1b3d52fdf3907571c1994adb9;hb=e6e72bf7ed8e6226c0d19118c6a92296e83d45c4;hp=d29ccccef279350575905ec718a9326e32888264;hpb=0e041a7bfe4655f4b2ffe4ce3f5ebe942a0151f0;p=chaz%2Ftar diff --git a/src/buffer.c b/src/buffer.c index d29cccc..949505c 100644 --- a/src/buffer.c +++ b/src/buffer.c @@ -301,7 +301,9 @@ write_archive_buffer (void) { written += status; if (written == record_size - || _isrmt (archive) || ! S_ISFIFO (archive_stat.st_mode)) + || _isrmt (archive) + || ! (S_ISFIFO (archive_stat.st_mode) + || S_ISSOCK (archive_stat.st_mode))) break; } @@ -1335,7 +1337,7 @@ close_archive (void) if (access_mode == ACCESS_READ && ! _isrmt (archive) - && S_ISFIFO (archive_stat.st_mode)) + && (S_ISFIFO (archive_stat.st_mode) || S_ISSOCK (archive_stat.st_mode))) while (rmtread (archive, record_start->buffer, record_size) > 0) continue; #endif