do input buffering in while sleeping loop of sending stuff to output buffer

git-svn-id: https://svn.musicpd.org/mpd/trunk@1125 09075e82-0dd4-0310-85a5-a0d7c8717e4f
This commit is contained in:
Warren Dukes
2004-05-21 22:31:07 +00:00
parent aea1ae9b9e
commit 547e358796
11 changed files with 47 additions and 34 deletions

View File

@@ -542,20 +542,20 @@ int inputStream_httpBuffer(InputStream * inStream) {
readed = read(data->sock, data->buffer+data->buflen,
(size_t)(HTTP_BUFFER_SIZE-1-data->buflen));
if(readed < 0 && (errno == EAGAIN || errno == EINTR));
if(readed < 0 && (errno == EAGAIN || errno == EINTR)) {
readed = 0;
}
else if(readed <= 0) {
close(data->sock);
data->connState = HTTP_CONN_STATE_CLOSED;
readed = 0;
}
else {
/*fwrite(data->buffer+data->buflen,1,readed,stdout);*/
data->buflen += readed;
}
/*fwrite(data->buffer+data->buflen,1,readed,stdout);*/
data->buflen += readed;
}
if(data->buflen > HTTP_PREBUFFER_SIZE) data->prebuffer = 0;
return 0;
return (readed ? 1 : 0);
}
/* vim:set shiftwidth=8 tabstop=8 expandtab: */