From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.ffmpeg.org (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTPS id A2D184E278 for ; Thu, 15 Jan 2026 21:54:59 +0000 (UTC) Authentication-Results: ffbox; dkim=fail (body hash mismatch (got b'Zcyw4vYGaug5ZL34l4V+PVkYaQGZy3m6n3mys6qBPG4=', expected b'2/m52JcLYlESuTHLBptYyA6TeCaCRakeLrVj+nn154k=')) header.d=ffmpeg.org header.i=@ffmpeg.org header.a=rsa-sha256 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1768514090; h=mime-version : to : date : message-id : reply-to : subject : list-id : list-archive : list-archive : list-help : list-owner : list-post : list-subscribe : list-unsubscribe : from : cc : content-type : content-transfer-encoding : from; bh=Zcyw4vYGaug5ZL34l4V+PVkYaQGZy3m6n3mys6qBPG4=; b=vwF3V5mGI86mgsUBIzX4JGZA/hnCEwxS7FlnWFRRC+THxszASEeJ6Ow4NjPtDEgoP/rA9 IbZQdiGyGcSTwEwZLtSUEW+cL1V3PWzPOTgO64dV1SmvmA293iNPzGuh92K1CrCMGINAde1 rDmN7ahkfFYzsOOncZaRZRjvA5DOeOJjSkD0WUp1jzRcjs9GKgLSKhwnVu6KO+oRdSCcDbg 9PtQQf1rFLz/IlHd3fprsu6aPub60ahZiMg3/vb9s+hM6Nagmdz9fP+us4D+Gd86R/5C0dL ZokIDRsJIeA3Hj5teXvfB05bn0HDl/LcbP5xjSloNYSjNTb9t4AErbtFMrRw== Received: from [172.20.0.4] (unknown [172.20.0.4]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTP id 89DAC690DF1; Thu, 15 Jan 2026 23:54:50 +0200 (EET) ARC-Seal: i=1; cv=none; a=rsa-sha256; d=ffmpeg.org; s=arc; t=1768514073; b=d4AuLfbaPKOYLV2S8JK8rSKTxFYoYG+9/dNCNpnhS4aqahPquSrUrsRtiZCVFYetYlSkC ZJ7Qp4GSj6tBVgqUDL3fYQScqwNlGsmBaSeDV3AEskPXAs2ENfh6LrGWMNt+LK1RXzrZgP5 U0ewU96hLjHAJ5yRiYaiQq9z8JVxqo5eao9j6wjk2A0yYg/yBQKIAbQqLjixmzMWZk8xxnp dvCcGbir5CpQDL8NPvU/XWGbc+DwVz4qNsVh8hFdp7i3ytjnE+0sD7Muwtpjaz1RYGbFi88 nibXPQpUQxLE89me/VO16Qgi8ofM0DXRlhsmVq8Rg4MZqYpv/y+Hzjb+6FkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=ffmpeg.org; s=arc; t=1768514073; h=from : sender : reply-to : subject : date : message-id : to : cc : mime-version : content-type : content-transfer-encoding : content-id : content-description : resent-date : resent-from : resent-sender : resent-to : resent-cc : resent-message-id : in-reply-to : references : list-id : list-help : list-unsubscribe : list-subscribe : list-post : list-owner : list-archive; bh=Fk/ggGspN+3MJl/2Yqk+H2zYqPLdONOg3mNaiYR+ZXs=; b=RlgkJSmWvnBZGkHFlk1euokWJKGuhGwx97gEtOygjugvLsfaUJ6iW0Kz0Zz0TlPgYPPon yL44EIYoWpakUrjDPhe4eMFoa0ZyZpeSA2CQ7TtDmFp42mFvKTROsbXM7b/1od0G4iSbB+o jzXOPC10rpiPFdBDUq5Cn7n/XgJRbn3TAe7Q8hFnSjjDY0scXYfijqomZMbJvvTNt6M9dHO nmahKPaqhDB+dt5LdIswUVFk4OfaCsRq3mPWHyjcZ/gLjOSTm0YTrgOChykn6kLj79BnU1h P1HGaEJSeRD2cGmi4TmX5k5LMxofCcrvJWtVVa4nc97ttkI5SIzA1knTR84Q== ARC-Authentication-Results: i=1; ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none; dmarc=pass header.from=ffmpeg.org policy.dmarc=quarantine Authentication-Results: ffmpeg.org; dkim=pass header.d=ffmpeg.org header.i=@ffmpeg.org; arc=none (Message is not ARC signed); dmarc=pass (Used From Domain Record) header.from=ffmpeg.org policy.dmarc=quarantine DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ffmpeg.org; i=@ffmpeg.org; q=dns/txt; s=mail; t=1768514065; h=content-type : mime-version : content-transfer-encoding : from : to : reply-to : subject : date : from; bh=2/m52JcLYlESuTHLBptYyA6TeCaCRakeLrVj+nn154k=; b=0Km7Thw68Nb5YntR5ToxOTg6bdVt21kXVVQYM/D70O7iuftT3lZq8s+jaEgqjCE30dyzN 1xvEaVNIDnBLpDq64SxFWjKCthNAuDu9UVJm0XiaYIiDpwZincYL6hGewG6MxQhsHLMzw1f JDA7ma+h18jbRHAoDsqH15+8AdtrIwJt3mgcD1kTfzaYtQKc8D0E8BxxENFH35/itzsZEPW euAxtEcLKifjcRUChJzfmmffPZ8ZoPu8vXMt0D6s0Vvud+pFUfpbyvYOlkxkgdBYXrNGj8Q fn1min3t1DCbi2xeiirtP0MPIzwCPH9dTA2M6xbVasOSgIIzVdzOytuH+uZw== Received: from 69dab402ede7 (code.ffmpeg.org [188.245.149.3]) by ffbox0-bg.ffmpeg.org (Postfix) with ESMTPS id 75BB6690DA6 for ; Thu, 15 Jan 2026 23:54:25 +0200 (EET) MIME-Version: 1.0 To: ffmpeg-devel@ffmpeg.org Date: Thu, 15 Jan 2026 21:54:25 -0000 Message-ID: <176851406563.25.6861662104674616472@4457048688e7> Message-ID-Hash: 7ZIJKHSIXLJQWFNTWISYP7E2PWYNAO23 X-Message-ID-Hash: 7ZIJKHSIXLJQWFNTWISYP7E2PWYNAO23 X-MailFrom: code@ffmpeg.org X-Mailman-Rule-Hits: nonmember-moderation X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-ffmpeg-devel.ffmpeg.org-0; header-match-ffmpeg-devel.ffmpeg.org-1; header-match-ffmpeg-devel.ffmpeg.org-2; header-match-ffmpeg-devel.ffmpeg.org-3; emergency; member-moderation X-Mailman-Version: 3.3.10 Precedence: list Reply-To: FFmpeg development discussions and patches Subject: [FFmpeg-devel] [PR] avformat/dashdec: fix calc_min_seg_no underflow (PR #21480) List-Id: FFmpeg development discussions and patches Archived-At: Archived-At: List-Archive: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: zotan via ffmpeg-devel Cc: zotan Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Archived-At: List-Archive: List-Post: PR #21480 opened by zotan URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21480 Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21480.patch Fixes an integer underflow in calc_min_seg_no in cases where availability_start_time - time_shift_buffer_depth is negative (i.e. the stream started within one time_shift_buffer_depth window). >>From 3c45e3a49b279e2abc2060acc4a3e52cbb9ccd1a Mon Sep 17 00:00:00 2001 From: Laura Hausmann Date: Thu, 15 Jan 2026 22:40:37 +0100 Subject: [PATCH] avformat/dashdec: fix calc_min_seg_no underflow Fixes an integer underflow in calc_min_seg_no in cases where availability_start_time - time_shift_buffer_depth is negative (i.e. the stream started within one time_shift_buffer_depth window). --- libavformat/dashdec.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/libavformat/dashdec.c b/libavformat/dashdec.c index 500d8ca518..4a0b368851 100644 --- a/libavformat/dashdec.c +++ b/libavformat/dashdec.c @@ -1438,8 +1438,15 @@ static int64_t calc_min_seg_no(AVFormatContext *s, struct representation *pls) int64_t num = 0; if (c->is_live && pls->fragment_duration) { + uint64_t current_time_in_sec = get_current_time_in_sec(); av_log(s, AV_LOG_TRACE, "in live mode\n"); - num = pls->first_seq_no + (((get_current_time_in_sec() - c->availability_start_time) - c->time_shift_buffer_depth) * pls->fragment_timescale) / pls->fragment_duration; + if (current_time_in_sec - c->availability_start_time < c->time_shift_buffer_depth) { + av_log(s, AV_LOG_TRACE, "timeShiftBufferDepth not reached yet\n"); + num = pls->first_seq_no; + } + else { + num = pls->first_seq_no + (((current_time_in_sec - c->availability_start_time) - c->time_shift_buffer_depth) * pls->fragment_timescale) / pls->fragment_duration; + } } else { num = pls->first_seq_no; } -- 2.52.0 _______________________________________________ ffmpeg-devel mailing list -- ffmpeg-devel@ffmpeg.org To unsubscribe send an email to ffmpeg-devel-leave@ffmpeg.org