From patchwork Fri Aug 27 14:27:15 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Rheinhardt X-Patchwork-Id: 29813 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6602:2a4a:0:0:0:0 with SMTP id k10csp1512641iov; Fri, 27 Aug 2021 07:28:48 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy//wZeE+tPghbkynrLfxWxfk0d7f5lYLCIen01W+eKSwzVpdsnTIQW/5w6DD8w3L/mq9Pd X-Received: by 2002:a17:906:60c2:: with SMTP id f2mr10285776ejk.531.1630074528478; Fri, 27 Aug 2021 07:28:48 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id hq41si561243ejc.559.2021.08.27.07.28.47; Fri, 27 Aug 2021 07:28:48 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@outlook.com header.s=selector1 header.b=ITPrBME6; arc=fail (body hash mismatch); spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 2C128689902; Fri, 27 Aug 2021 17:28:00 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-oln040092064097.outbound.protection.outlook.com [40.92.64.97]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2E51A680A2C for ; Fri, 27 Aug 2021 17:27:54 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EVSs25KGLBRLdvv5JEHXcMN+0kuGJ6/R90BlYQL1NsByn6JbSYY5mZ8qZ/Oq4qYd4xDxqMguXhlkSIqROqHvaR/46pk99W9qIGvvkp2pTQmeVM664Wn/rtZOblKTGc0VX6sOMVzNyDOAszZykjmG99/yWhwdEZv6rt6ZyySDVyXA3FAR33RaXSwugIrl2k0sUEgIlTJmAjxaRaF4IzNCmIwIeEcreXSM9vpNPElA3JDwrkltifLUGMK1+iIuMGU3JieuMHzGH2W4WaxJNWGb6HjQ2vM4wwh+UstFVI3ZBmVp0NzxvGhDdAN7VkDgToqxl6Me4nJSPiNktJpCSv6P4Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Chw7dNZK8fk7hb3yu4yhznwhOyho+thQ422rhTYj+B4=; b=Wfj5EQOnDMCiW5Paa69xA66Gk8AfSkU+6n1VZ6K711W040XqIYEFXy0V7qEguSOPgeYtnIMbYmTQbyot1bFEKCsyzVyqPUCF07xRbc0KdXK9poCwJzizrHpBYPv2peG9IZRisl+cGU5DtCGARzGE5lAHv843BPJH/N6mqHr+GGyU2CVI4VX7CxnY81n1RlQyUyI4hBhtcrMhJLCjJKQme3Gf51yUdh1NMPvYA+iieUrXUmQlIE2vrCTyU3C6jPUz/stsOLuGP7I4sVNeI1ZhOWT+UO9YwZET/TG5BgO0XbGIg84lH1WYnxS0zlrS+4MvTwCm6C+dNMgtF0Cku4X+aQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Chw7dNZK8fk7hb3yu4yhznwhOyho+thQ422rhTYj+B4=; b=ITPrBME6e+lWYekbYBK8xdYGyz+l7SXzVe7Y72E5SEwyWOHyUVNS24naA5TxeUMi/TYPYAOwlAEK2Mk+YpuO5lxnHMy84ycw9CMe4foJfMUokyFD7nLaHu6AhVna25A8xiiBt9Y1fJj8InaHLWs9I6qQx3Wps1MWmwHlbsaDhn18VOT6HL4jVuk7JH+YA86cQBNMid5bsYnE4VT1WYK9u0YTzL87hw8sdW8sKXWeLNppQCnuUF3Et4GfBh5Bfn6jiHzuJTDHWEJUy4DgXLOyoHv+iKt25ux/onaLRxae0aZZvv+3n1nBFRGWIaOdwf8/SNaR5yN7e6dVYWZ05mZdCw== Received: from AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) by AM6PR03MB4824.eurprd03.prod.outlook.com (2603:10a6:20b:84::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4457.18; Fri, 27 Aug 2021 14:27:53 +0000 Received: from AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::5574:1fd:cce2:d590]) by AM7PR03MB6660.eurprd03.prod.outlook.com ([fe80::5574:1fd:cce2:d590%5]) with mapi id 15.20.4436.027; Fri, 27 Aug 2021 14:27:53 +0000 From: Andreas Rheinhardt To: ffmpeg-devel@ffmpeg.org Date: Fri, 27 Aug 2021 16:27:15 +0200 Message-ID: X-Mailer: git-send-email 2.30.2 In-Reply-To: References: X-TMN: [xKrM5uUCbHyy17XhjAql3Dm3xBcDVY6z] X-ClientProxiedBy: FR3P281CA0031.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1c::9) To AM7PR03MB6660.eurprd03.prod.outlook.com (2603:10a6:20b:1c1::22) X-Microsoft-Original-Message-ID: <20210827142725.645653-14-andreas.rheinhardt@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from sblaptop.fritz.box (188.192.142.38) by FR3P281CA0031.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1c::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4478.10 via Frontend Transport; Fri, 27 Aug 2021 14:27:52 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 7dc92044-0e50-4755-28e4-08d96966dac8 X-MS-Exchange-SLBlob-MailProps: S/btQ8cKWiQnUOrjuXD0ZUxXZpiaS0/7iZebmMqkgQEARHlsADHjZ7ZrZ/JtFaBqvnksp8FZEXxvQq/EQFjbMBH86ls2lrI+RPrzketv7LKpf0XvyifxQhWkZOWdrbe+NU7Fc3FT6nTazK1Daevl+4Bk/iJ3U+MEk5ZtdBH0cEDTN+eZQmE9ycdnv++HtAOrE8kmJNp2QenMinW5JZrOxUwjLMeB9T1YWVKtlESKhLECP0ep3M6hGJ4DpaP0W21UxbtrsaV5Z/99bcJCjk4SDsR8osB/MwSdP4BHR6Ha6lQDI6PRSlW6PdRWgI1HAZWhInA5upCDhIY/Vc3Coy5X5PDykQbdURvoONOlkh/GcEJkWuyuHSNlMCoPqYx74Q/ytndRmECbYLe8AnmeB2XhxyR2vRM7yLobNIWnqZFu8kf358W+rhUEWAv1CBROs6PcI5jjC4O1dqmW/m7rNpRhwlweMFpzFgYLgoI9vDHBcIubBWg1ZRV5dOzJl9oiNJozRYJfDyClrYnnchVZ4HESe/Xt8jGspvUnhImRz0cHUYLi7JriXmO5dvPRgU5aNKgW+M1FDuJ7ZOyOt24Q29KrPKcJMWMGxpknBRFXR1PDZxCuY8vcuWfSqE454ZzS60u56nKsDfQcEHvFDQYm8CFNgDXaBsWK/mPPdudgwSoh0W2aQ7nFkfxlL0acCeDXWawSvVL+ZJwJ0gg5rXsHY8uEmLnSKfBYM8CTGg2JER/s8hHC4x405nJQbDfEhh3CeI+5odpSkNbDhsU= X-MS-TrafficTypeDiagnostic: AM6PR03MB4824: X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: nkPQxP+bo1l/4un7ZuBIWx4VAAz1B/1LAyWRRimUiJefLDhYzBDcWATi8RfOU1ujYurK8sqt8qXQuO+zc4RxUeJY7FcdU8MPa2C4SKyAS61G5uY9+3Uev5Oqki12zYICei6jnIaHhxS+t4asNiyAXxddNMeY7xglxZ4vBWaWnqi4yeDNzcMW66AeDEAF/tK5qf9Pm5krAWb4KLZq4SNUmh8dX4nWF/OsLZuItzkZGLZ/8WfsNkI6bdEKmyByQlisqWxd8jS57SAvOQeG83OLyZI4qDz+wytkfXPbN7xvlO52XTQD/ptrFICNmP6yCwyb1MTHssm2K9rVYvv8JiOZCKrTzo1j0j5QqcecdrRRGru+U4YAEJjYx8iJTRbj1wXSkrcQ/2sEuewHvXe+DnQAsI8jIBdAnbhd5Amk7rMUplN9HjJl8WMZyNhlJ6B810q8 X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: CpUQnJNrVC0oU1GNCLGyqAA+FYB8ABR9p0OTNgPSotO0LwDc4Vzw3R/BwLjJkLJi6JN2E+yz+UiEDzft5VfbM4XYqphFuS0/UG97TrY1sDdUIEAzOWoguGOR75AettzvGYFQ/UWgmpS7roAvsl/cdw== X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7dc92044-0e50-4755-28e4-08d96966dac8 X-MS-Exchange-CrossTenant-AuthSource: AM7PR03MB6660.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Aug 2021 14:27:53.0097 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR03MB4824 Subject: [FFmpeg-devel] [PATCH 15/25] avformat/utils: Don't compare pointers when sorting chapters X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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: Andreas Rheinhardt Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: IWfRrXE6UofW The chapters are independently allocated, so that comparing the pointers is undefined behaviour. Furthermore, its result is not platform-independent (and may not even be deterministic on a particular platform). So compare the chapters' ids instead. (avpriv_new_chapter() ensures that there are no duplicate ids.) Signed-off-by: Andreas Rheinhardt --- libavformat/utils.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavformat/utils.c b/libavformat/utils.c index 78bfb36cd0..264b5b1a4b 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -3160,7 +3160,7 @@ static int chapter_start_cmp(const void *p1, const void *p2) int delta = av_compare_ts(ch1->start, ch1->time_base, ch2->start, ch2->time_base); if (delta) return delta; - return (ch1 > ch2) - (ch1 < ch2); + return FFDIFFSIGN(ch1->id, ch2->id); } static int compute_chapters_end(AVFormatContext *s)