diff --git a/libavformat/hlsproto.c b/libavformat/hlsproto.c index 751fef2e4d9bbb83f11916a82c7d5a88c57c5948..0eba049797ee4e637df6a7db2a9db76feb0f8c86 100644 --- a/libavformat/hlsproto.c +++ b/libavformat/hlsproto.c @@ -121,8 +121,10 @@ static int parse_playlist(URLContext *h, const char *url) return ret; read_chomp_line(in, line, sizeof(line)); - if (strcmp(line, "#EXTM3U")) - return AVERROR_INVALIDDATA; + if (strcmp(line, "#EXTM3U")) { + ret = AVERROR_INVALIDDATA; + goto fail; + } free_segment_list(s); s->finished = 0;