@ -1593,6 +1593,19 @@ static void update_noheader_flag(AVFormatContext *s)
s - > ctx_flags & = ~ AVFMTCTX_NOHEADER ;
s - > ctx_flags & = ~ AVFMTCTX_NOHEADER ;
}
}
static int hls_close ( AVFormatContext * s )
{
HLSContext * c = s - > priv_data ;
free_playlist_list ( c ) ;
free_variant_list ( c ) ;
free_rendition_list ( c ) ;
av_dict_free ( & c - > avio_opts ) ;
return 0 ;
}
static int hls_read_header ( AVFormatContext * s )
static int hls_read_header ( AVFormatContext * s )
{
{
void * u = ( s - > flags & AVFMT_FLAG_CUSTOM_IO ) ? NULL : s - > pb ;
void * u = ( s - > flags & AVFMT_FLAG_CUSTOM_IO ) ? NULL : s - > pb ;
@ -2013,19 +2026,6 @@ static int hls_read_packet(AVFormatContext *s, AVPacket *pkt)
return AVERROR_EOF ;
return AVERROR_EOF ;
}
}
static int hls_close ( AVFormatContext * s )
{
HLSContext * c = s - > priv_data ;
free_playlist_list ( c ) ;
free_variant_list ( c ) ;
free_rendition_list ( c ) ;
av_dict_free ( & c - > avio_opts ) ;
return 0 ;
}
static int hls_read_seek ( AVFormatContext * s , int stream_index ,
static int hls_read_seek ( AVFormatContext * s , int stream_index ,
int64_t timestamp , int flags )
int64_t timestamp , int flags )
{
{