From patchwork Fri May 8 10:33:57 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Liu Steven X-Patchwork-Id: 19552 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id BA7CB44A321 for ; Fri, 8 May 2020 13:34:19 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 9B0CD6880F3; Fri, 8 May 2020 13:34:19 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from smtpbgeu1.qq.com (smtpbgeu1.qq.com [52.59.177.22]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id F083C6880F3 for ; Fri, 8 May 2020 13:34:12 +0300 (EEST) X-QQ-mid: bizesmtp22t1588934048tn1bz42u Received: from localhost (unknown [103.107.216.231]) by esmtp6.qq.com (ESMTP) with id ; Fri, 08 May 2020 18:34:07 +0800 (CST) X-QQ-SSF: 01100000002000Y0ZXF0B00A0000000 X-QQ-FEAT: EsXzJ1DdTXIyIzIr4FxR25snerteieOeymmYKT6z3f7QvN86ZpaGsGRKBznK5 s7O0tzCw8rNpHNeFaqncKvi8YMJ3qkzUu9V4CTkTzG83rdziJzrYvvhHNirbVsFl++26fhf xXfpaDBfGCT/rJkMG+5wwG73ACoJhcFOMdPDbBFD8MrcRTpGcMy/7r78A/uxA0cNTJQaDI8 eom4X4C88XkAzKaMish9s3AaR2Zf3hEIkr8LnPwB/kZmcEZPJBM/tDVavNsih1XwTXflNNM Y+7J5jl8N1Uhu6mGQyNPf7NOclRUvi7BUriab190YHMq4+kbk+MUL81IU= X-QQ-GoodBg: 0 From: Steven Liu To: ffmpeg-devel@ffmpeg.org Date: Fri, 8 May 2020 18:33:57 +0800 Message-Id: <20200508103359.65143-1-lq@chinaffmpeg.org> X-Mailer: git-send-email 2.25.0 MIME-Version: 1.0 X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:chinaffmpeg.org:qybgforeign:qybgforeign7 X-QQ-Bgrelay: 1 Subject: [FFmpeg-devel] [PATCH 1/3] avformat/hlsenc: move number out of hls_start X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Steven Liu Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: Steven Liu --- libavformat/hlsenc.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c index a1eddade7b..bcc67b1159 100644 --- a/libavformat/hlsenc.c +++ b/libavformat/hlsenc.c @@ -1679,7 +1679,6 @@ static int hls_start(AVFormatContext *s, VariantStream *vs) ff_format_set_url(vtt_oc, filename); } } - vs->number++; proto = avio_find_protocol_name(oc->url); use_temp_file = proto && !strcmp(proto, "file") && (c->flags & HLS_TEMP_FILE); @@ -2515,7 +2514,6 @@ static int hls_write_packet(AVFormatContext *s, AVPacket *pkt) } if (hls->flags & HLS_SINGLE_FILE) { - vs->number++; vs->start_pos += vs->size; } else if (hls->max_seg_size > 0) { vs->start_pos = new_start_pos; @@ -2526,14 +2524,13 @@ static int hls_write_packet(AVFormatContext *s, AVPacket *pkt) vs->start_pos = 0; /* When split segment by byte, the duration is short than hls_time, * so it is not enough one segment duration as hls_time, */ - vs->number--; } - vs->number++; } else { vs->start_pos = new_start_pos; sls_flag_file_rename(hls, vs, old_filename); ret = hls_start(s, vs); } + vs->number++; av_freep(&old_filename); if (ret < 0) { @@ -3028,6 +3025,7 @@ static int hls_init(AVFormatContext *s) if ((ret = hls_start(s, vs)) < 0) goto fail; + vs->number++; } fail: From patchwork Fri May 8 10:33:58 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Liu Steven X-Patchwork-Id: 19554 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id D160044A321 for ; Fri, 8 May 2020 13:34:48 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id BD455689D90; Fri, 8 May 2020 13:34:48 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from smtpbguseast2.qq.com (smtpbguseast2.qq.com [54.204.34.130]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 141AB6883AE for ; Fri, 8 May 2020 13:34:41 +0300 (EEST) X-QQ-mid: bizesmtp2t1588934065tojmralwq Received: from localhost (unknown [103.107.216.231]) by esmtp6.qq.com (ESMTP) with id ; Fri, 08 May 2020 18:34:24 +0800 (CST) X-QQ-SSF: 01100000002000Y0ZXF0B00A0000000 X-QQ-FEAT: UL1gzFh62S6tilxqB4J4qFF728Fg8Rsj4rorHJnQYzQen8cOw2Uc7vWg71TB0 OtRnFvn3JhFI4qoN2QpiyuW9dDePHzZXTd3H9GzCWPqKvEP2s2eZ7EsvN+JaoC3/S1y1+iC 63evlFYdAmCOp2X7Gk3catFSaS/gHMfojpvCp/nqqCi8o8FrjbPk9beEhriPcU1iKR3nxZX D5v8gd7RtDW7d8Q4nvq+Rpf28InNSI+9n8XjtzQjr+o1HijOo009h1SqaYnDZAjk0gzH/7H yQqvsTlQjeOKRzwgwa3b+osgTFIIKcDVz6tcjFeB2UvZ+MLsFJ6HTH9htmDy7nL456UxxjY NzxPXij X-QQ-GoodBg: 0 From: Steven Liu To: ffmpeg-devel@ffmpeg.org Date: Fri, 8 May 2020 18:33:58 +0800 Message-Id: <20200508103359.65143-2-lq@chinaffmpeg.org> X-Mailer: git-send-email 2.25.0 In-Reply-To: <20200508103359.65143-1-lq@chinaffmpeg.org> References: <20200508103359.65143-1-lq@chinaffmpeg.org> MIME-Version: 1.0 X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:chinaffmpeg.org:qybgforeign:qybgforeign5 X-QQ-Bgrelay: 1 Subject: [FFmpeg-devel] [PATCH 2/3] avformat/hlsenc: fix filename memleak in hls_write_packet X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Steven Liu Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: Steven Liu --- libavformat/hlsenc.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c index bcc67b1159..307aba2efa 100644 --- a/libavformat/hlsenc.c +++ b/libavformat/hlsenc.c @@ -2447,6 +2447,7 @@ static int hls_write_packet(AVFormatContext *s, AVPacket *pkt) av_log(s, hls->ignore_io_errors ? AV_LOG_WARNING : AV_LOG_ERROR, "Failed to open file '%s'\n", filename); av_dict_free(&options); + av_freep(&filename); return hls->ignore_io_errors ? 0 : ret; } if (hls->segment_type == SEGMENT_TYPE_FMP4) { @@ -2454,6 +2455,7 @@ static int hls_write_packet(AVFormatContext *s, AVPacket *pkt) } ret = flush_dynbuf(vs, &range_length); if (ret < 0) { + av_freep(&filename); av_dict_free(&options); return ret; } From patchwork Fri May 8 10:33:59 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Liu Steven X-Patchwork-Id: 19553 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id D14C844A321 for ; Fri, 8 May 2020 13:34:43 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id B0A1B6897D6; Fri, 8 May 2020 13:34:43 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from smtpproxy21.qq.com (smtpbg702.qq.com [203.205.195.102]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id B4064687F7D for ; Fri, 8 May 2020 13:34:36 +0300 (EEST) X-QQ-mid: bizesmtp22t1588934070tvsx1m0o Received: from localhost (unknown [103.107.216.231]) by esmtp6.qq.com (ESMTP) with id ; Fri, 08 May 2020 18:34:28 +0800 (CST) X-QQ-SSF: 01100000002000Y0ZXF0B00A0000000 X-QQ-FEAT: s8YYpWqVDdfXNCNZ2woI5HD0pGsa80dBa3RYlFh0VN29vqoaCjnuAKA09GCfS alnfdWxR5Fvejirz6T719IfO5KAK0WXS6i1NazeGdgksAEMhVr/Y8X68wIxx4vAUtBKPBs1 GonjHDpwf4hR/HuEeEJIHpu3P+ZjlbDYuSQhcmeakodcuxEENsGD2N7JtgKh7PlKDkcHIH1 T4R92p8FWecOAEjpTeaUM4JTOUbbQ0yhtRZeTONKAZz3mLAbp/OU2Xw4Vu/qqqgYLJQkCBT 0/FV9+xPCpI7epLkeNlrSs7rK61HBGvdjsJrvFL44AlPUb5o3WtLdNj6wsPp10HEoMs0vNs PUqb5sq X-QQ-GoodBg: 0 From: Steven Liu To: ffmpeg-devel@ffmpeg.org Date: Fri, 8 May 2020 18:33:59 +0800 Message-Id: <20200508103359.65143-3-lq@chinaffmpeg.org> X-Mailer: git-send-email 2.25.0 In-Reply-To: <20200508103359.65143-1-lq@chinaffmpeg.org> References: <20200508103359.65143-1-lq@chinaffmpeg.org> MIME-Version: 1.0 X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:chinaffmpeg.org:qybgforeign:qybgforeign7 X-QQ-Bgrelay: 1 Subject: [FFmpeg-devel] [PATCH 3/3] avformat/hlsenc: free options fix memleak in hls_write_trailer X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Steven Liu Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: Steven Liu --- libavformat/hlsenc.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c index 307aba2efa..eb12b4a7f8 100644 --- a/libavformat/hlsenc.c +++ b/libavformat/hlsenc.c @@ -2679,9 +2679,10 @@ static int hls_write_trailer(struct AVFormatContext *s) if (ret < 0) av_log(s, AV_LOG_WARNING, "Failed to upload file '%s' at the end.\n", oc->url); } - av_freep(&vs->temp_buffer); failed: + av_freep(&vs->temp_buffer); + av_dict_free(&options); av_freep(&filename); av_write_trailer(oc); if (oc->url[0]) {