Re: [FFmpeg-devel] [PATCH 1/4] libavformat/segment: don't leave the list pb open when not in use

2015-03-29 Thread Michael Niedermayer
On Sat, Mar 28, 2015 at 07:25:18PM -0600, Rodger Combs wrote:
> ---
>  libavformat/segment.c | 9 +
>  1 file changed, 5 insertions(+), 4 deletions(-)

applied

i wonder if it would make sense to leave it open and update
its content

thanks

[...]
-- 
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

The real ebay dictionary, page 2
"100% positive feedback" - "All either got their money back or didnt complain"
"Best seller ever, very honest" - "Seller refunded buyer after failed scam"


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH 1/4] libavformat/segment: don't leave the list pb open when not in use

2015-03-28 Thread Rodger Combs
---
 libavformat/segment.c | 9 +
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/libavformat/segment.c b/libavformat/segment.c
index b65a2eb..06bc459 100644
--- a/libavformat/segment.c
+++ b/libavformat/segment.c
@@ -357,17 +357,17 @@ static int segment_end(AVFormatContext *s, int 
write_trailer, int is_last)
 av_freep(&entry);
 }
 
-avio_closep(&seg->list_pb);
 if ((ret = segment_list_open(s)) < 0)
 goto end;
 for (entry = seg->segment_list_entries; entry; entry = entry->next)
 segment_list_print_entry(seg->list_pb, seg->list_type, entry, 
s);
 if (seg->list_type == LIST_TYPE_M3U8 && is_last)
 avio_printf(seg->list_pb, "#EXT-X-ENDLIST\n");
+avio_closep(&seg->list_pb);
 } else {
 segment_list_print_entry(seg->list_pb, seg->list_type, 
&seg->cur_entry, s);
+avio_flush(seg->list_pb);
 }
-avio_flush(seg->list_pb);
 }
 
 av_log(s, AV_LOG_VERBOSE, "segment:'%s' count:%d ended\n",
@@ -635,8 +635,9 @@ static int seg_write_header(AVFormatContext *s)
 else if (av_match_ext(seg->list, "ffcat,ffconcat")) seg->list_type 
= LIST_TYPE_FFCONCAT;
 else  seg->list_type = 
LIST_TYPE_FLAT;
 }
-if ((ret = segment_list_open(s)) < 0)
-goto fail;
+if (!seg->list_size && seg->list_type != LIST_TYPE_M3U8)
+if ((ret = segment_list_open(s)) < 0)
+goto fail;
 }
 if (seg->list_type == LIST_TYPE_EXT)
 av_log(s, AV_LOG_WARNING, "'ext' list type option is deprecated in 
favor of 'csv'\n");
-- 
2.3.4

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel