mirror of
https://github.com/moparisthebest/curl
synced 2024-12-22 08:08:50 -05:00
RTSP followup fix. Both the pipelined and non-pipelined case need to
check for (excess > 0 && !k->ignorebody).
This commit is contained in:
parent
15ddc1f134
commit
fce02e1cab
@ -619,10 +619,10 @@ static CURLcode readwrite_data(struct SessionHandle *data,
|
|||||||
(k->bytecount + nread >= k->maxdownload)) {
|
(k->bytecount + nread >= k->maxdownload)) {
|
||||||
|
|
||||||
excess = (size_t)(k->bytecount + nread - k->maxdownload);
|
excess = (size_t)(k->bytecount + nread - k->maxdownload);
|
||||||
|
if(excess > 0 && !k->ignorebody) {
|
||||||
if(conn->data->multi && Curl_multi_canPipeline(conn->data->multi)) {
|
if(conn->data->multi && Curl_multi_canPipeline(conn->data->multi)) {
|
||||||
/* The 'excess' amount below can't be more than BUFSIZE which
|
/* The 'excess' amount below can't be more than BUFSIZE which
|
||||||
always will fit in a size_t */
|
always will fit in a size_t */
|
||||||
if(excess > 0 && !k->ignorebody) {
|
|
||||||
infof(data,
|
infof(data,
|
||||||
"Rewinding stream by : %zu"
|
"Rewinding stream by : %zu"
|
||||||
" bytes on url %s (size = %" FORMAT_OFF_T
|
" bytes on url %s (size = %" FORMAT_OFF_T
|
||||||
@ -632,7 +632,6 @@ static CURLcode readwrite_data(struct SessionHandle *data,
|
|||||||
k->size, k->maxdownload, k->bytecount, nread);
|
k->size, k->maxdownload, k->bytecount, nread);
|
||||||
read_rewind(conn, excess);
|
read_rewind(conn, excess);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
else {
|
else {
|
||||||
infof(data,
|
infof(data,
|
||||||
"Excess found in a non pipelined read:"
|
"Excess found in a non pipelined read:"
|
||||||
@ -642,6 +641,7 @@ static CURLcode readwrite_data(struct SessionHandle *data,
|
|||||||
", bytecount = %" FORMAT_OFF_T "\n",
|
", bytecount = %" FORMAT_OFF_T "\n",
|
||||||
excess, k->size, k->maxdownload, k->bytecount);
|
excess, k->size, k->maxdownload, k->bytecount);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
nread = (ssize_t) (k->maxdownload - k->bytecount);
|
nread = (ssize_t) (k->maxdownload - k->bytecount);
|
||||||
if(nread < 0 ) /* this should be unusual */
|
if(nread < 0 ) /* this should be unusual */
|
||||||
|
Loading…
Reference in New Issue
Block a user