fail:
av_dict_free(&options);
- if (ret) {
+ if (ret < 0) {
av_freep(&hls->basename);
if (hls->avf)
avformat_free_context(hls->avf);
hls->size = new_start_pos - hls->start_pos;
ret = hls_append_segment(hls, hls->duration, hls->start_pos, hls->size);
hls->start_pos = new_start_pos;
- if (ret)
+ if (ret < 0)
return ret;
hls->end_pts = pkt->pts;
ret = hls_start(s);
}
- if (ret)
+ if (ret < 0)
return ret;
oc = hls->avf;
hls_free_segments(hls->segments);
hls_free_segments(hls->old_segments);
- avio_close(hls->pb);
+ avio_closep(&hls->pb);
return 0;
}