mirror of https://github.com/mpv-player/mpv
Fix double free of *http_hdr at server error.
In http.c::http_streaming_start() *http_hdr is allocated then assigned to stream->streaming_ctrl->data if server returns error *http_hdr is freed before function returns. However the copy in ->data remains and is later freed (again) by network.c::streaming_ctrl_free(). git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21792 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
74ec945b20
commit
a36aff154c
|
@ -749,8 +749,6 @@ static int http_streaming_start(stream_t *stream, int* file_format) {
|
|||
http_debug_hdr( http_hdr );
|
||||
}
|
||||
|
||||
stream->streaming_ctrl->data = (void*)http_hdr;
|
||||
|
||||
// Check if we can make partial content requests and thus seek in http-streams
|
||||
if( http_hdr!=NULL && http_hdr->status_code==200 ) {
|
||||
char *accept_ranges;
|
||||
|
@ -858,7 +856,9 @@ err_out:
|
|||
fd = -1;
|
||||
res = STREAM_UNSUPORTED;
|
||||
http_free( http_hdr );
|
||||
http_hdr = NULL;
|
||||
out:
|
||||
stream->streaming_ctrl->data = (void*)http_hdr;
|
||||
stream->fd = fd;
|
||||
return res;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue