• Andreas Rheinhardt's avatar
    avformat/hlsenc: Fix leak of options when writing packets · bd131b64
    Andreas Rheinhardt authored
    Under certain circumstances hls_write_packet() would add options to an
    AVDictionary. Said dictionary was never explicitly freed, instead it was
    presumed that these options would be consumed when opening a new
    IO-context. This left several possibilities for memleaks:
    
    a) When no new IO-context would be opened at all. This is possible when
    using both the flags temp_file and single_file together with a file
    output.
    b) When an error happens before one actually tries to open the new
    IO-context.
    c) When the new IO-context does not consume all options.
    
    All three have been fixed; furthermore, the AVDictionary has been put
    into a smaller scope (namely the only part of hls_write_packet() where
    it is actually used).
    Signed-off-by: 's avatarAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
    Reviewed-by: 's avatarSteven Liu <lq@onvideo.cn>
    bd131b64
hlsenc.c 111 KB