From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 9705944C27 for ; Sat, 8 Jun 2024 21:14:09 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0D3C768D709; Sun, 9 Jun 2024 00:14:08 +0300 (EEST) Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05olkn2021.outbound.protection.outlook.com [40.92.90.21]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id BF1EC68D6D4 for ; Sun, 9 Jun 2024 00:14:01 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HUCku8FhP3hDUApkJ+CS4LsKUtYjpexhzWMpMFtXYlrQiu7r/tSaV+q8RrjH+SHhS+uM/YLL2jzvVnxW4s3VZayW7ql99YoTX6XvEt9jNZwWZnKLWhSdva+i3K8yqA+CA7KADCXUwwHZeY7PRXxnHGAewpwQkDrO87ISB4LDKLrtZs16sn2OpZI+eWMEC4I3EqZ85yw4xChJit/F5xAzO211BLeDpQNoAP1P/NN4ycatxVjkYN8g42JP4ooXihIY9QMr9dobsNK9+9a+velTq5Uu/ZA0GIc1TX2q3Olf88gqNUIlNRWQS73vVc+7W9ceiM9aSw1hYSx4SmgiuY8TuQ== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=4MQRy5YzNYHxw3RorJIAO0NjNq+AY6zkF/r7CODNKqg=; b=LxD5b4QC5EGTZZtj+5/QVurDYUs09xPoeC/9Rg5a/Kbliu8FxZ+K59xXwpfA1/0slJgYZsI16C5AP6jgdsMSdWcArrZ5JB5p6Ogt0ziWWyQW7g64yLpnpnZDB45xhE8b74hyxx7bqa7q01AjFlaVRYlbsUryUOzS2s5P+p7k6iOdlTO8H9sBUFV7lUZrApAtk6NxDS6pfh51gTKJarJ7Phfif1zWExBHZfkR6H4iforX45bwM6AZ34iEXZrIfr6TUSjLmcf9ebahXrsEtKTHGRa/mr1IAo1gjlYo3JyVYhNtoBDtxxkvBkjxhagSrNiK3H2anTG4Mj2Na/09GbzWZw== 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=4MQRy5YzNYHxw3RorJIAO0NjNq+AY6zkF/r7CODNKqg=; b=aEhjdRs02HRIdG0mqs/nWCsGb6x2NvutS4PkwSayeHWTcRTDDleJMzqQzYds+YQwY6DifDWU5+z6intP2WnTgjA1CoNRgkRsJBMsBd2/6jbk56EMVNh9ZdlQgqx1hVxCdM6bCylrRX0VsZR+CEWlnAVGe8bwivT9Lud4gzETHLH+EwydR+D26aRRsFwU86P3t0tttL/prX23nWkOPjiYeeau5M8fs7aAvr/M5ZTfplzBZQ/hRrlgFzrKcLcOXVzFR6DQIIwpDLIzCYnE79WpzthzduqEU6VicE9MB9DOLLPCb+a8w0CcbCy4Phf6/tMl8JMSQiPF/2BIAdFiFj67iw== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by AM8P250MB0376.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:32b::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.36; Sat, 8 Jun 2024 21:14:00 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::384d:40d4:ecb7:1c9%4]) with mapi id 15.20.7633.021; Sat, 8 Jun 2024 21:14:00 +0000 Message-ID: Date: Sat, 8 Jun 2024 23:13:58 +0200 User-Agent: Mozilla Thunderbird To: ffmpeg-devel@ffmpeg.org References: Content-Language: en-US From: Andreas Rheinhardt In-Reply-To: X-TMN: [EkwvKBPCmeMqqwIu4sLKBaUHJimO/SLkOIN1u9XC7H4=] X-ClientProxiedBy: ZR0P278CA0125.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:20::22) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <89999d5b-8b38-4941-9842-c0eda4e8523c@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|AM8P250MB0376:EE_ X-MS-Office365-Filtering-Correlation-Id: 0da7d6bf-446d-4b5d-65d0-08dc87ffea96 X-Microsoft-Antispam: BCL:0;ARA:14566002|461199019|440099019|3412199016; X-Microsoft-Antispam-Message-Info: dR1UrkySNhFEVVQu/7b49AtXWCKWA09ZKm4P6HTL65w+MDbGmzO6S7hcU6rJxqHQqc8bTLbqWQQuJWQGSne7/VZHm699mqOxUSoJmW1BLZQDCCOgsTjOuQJRTZnKOH8L2koJGes9F8tg3KkfEC1oMbxGf2arIvXNxFUT8VzrJtnBt2Wtb74PaRdCaOyZQXXxIJwKLhjdme6cG3pZPriz4KVgPoUOV+kYCTm3tcDjs64whDWlWSK/n0B1VeK/2sO6uP8VTdqrfXEE4K4ib1fvZdkUZyFkilIcXb8GTHgCQDyhahsnJbhfxrLrCfs6YU2GQn8ywMH0qWG+kPzMYOA0sKzj51L32nzYHmCw+AG/Nn9V1k0EY9btOrWMBKlLY4Pk96uLswEqyZjVGwrL0kUOd3PMtZQtgU/1Zam+WKL6G5AK5OIjNeNpv/ral8LP2gBP/RVr1dNg2r69OpO7hWavnNZkThH9MDELzANeR+j04XsmWKI4J4B3LFSoqfsMLEPphSehvZ3c6uoCvtRFKHZIkxImMF43RQ7lICpADR1EYBB8wOemsduDH/KsWuxWQoOe X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MVhMMFBHSmFPbnBLaEl3b0FicmdSSDM0ZDl2TVVCc1pwTzZidTFaL1ZiSEU1?= =?utf-8?B?bEc1WkJkZk9tSDVjTkNTSlU2NzlDSVdaY1MwdWZlZmQvYmE2N2tnakFIV2Iv?= =?utf-8?B?U0FsNlpvTUh1cW9BaVF2U29SbWM2U2g5QTNtYWZkYU13anAvelhoVkEzekl3?= =?utf-8?B?Mm1oY2VUMkdVenNFZXQyNmNmbUhwV1ZLcXY1em9JVkl2TmxFSUxOdVhKSlBa?= =?utf-8?B?QW9aQ3NEV3hNQzE4Z3RFS292NnJRSDc4amdxOEdWY1UyK09iei9nZXVtVWti?= =?utf-8?B?aDZsTms0WVpXRzVwamVVOEVGK2J5a2JrSHpDSFE3WWpqNmdFbjNOajlXTmxY?= =?utf-8?B?cmg4T3A5aDZmNWVhcjlwY0RTTEVwNFJpdllQcVFGNzFwWWt0VHBOZTU5ZHBa?= =?utf-8?B?UlJLU0pwbGtMTStWUlRybjRmNCt4cHVad2Z0YnYxU0JwbGFmeUJSUThMdE9y?= =?utf-8?B?ZTNRY0E0MTBVaStlWVJubnoxS0tMTjVDVE9Ebm1IS2hIcFVUcVVHYUYyV084?= =?utf-8?B?Uis5M2kyWU9PUXZnSnlNbGJEQTk0eCt2dEpwODdXZFUwR05mVlpyekFNNTBp?= =?utf-8?B?ZHJBSEVLaEFWMzJjU0RNczJGMkRPQy9xYTFZc0pWNEhpUFB5Q0JzcERvVU9U?= =?utf-8?B?V29NVCs4eFlXMmhqcjdDNzR1QmNiSXJmbmllMVREMkFiWHNOTFNYNER3dW5E?= =?utf-8?B?N1VIUnJuWTVkeUh6cGRIWUduMTFsTTZYbWpmMHNsVjFOcVlRRDJlUzlIanRJ?= =?utf-8?B?Wk13NFlkaW5ERjZTQWpyNnBUSDhZbGxPaUlMS1oraDJTQms4K2VPdmJCL0lk?= =?utf-8?B?OG5uek1CelMzNnVYWVBsRGRtdzlwTFlNWDZIdnlUM1cyMkg1UllJS0xGR2I3?= =?utf-8?B?U3dFSnJRYVJFTTFhRDRWUitoS25xaU5PM0ZNaDhkMWtNTlc3ZkJRS3hrdkVZ?= =?utf-8?B?Yy9HNkJQVUNBQXVkaDlKSlVjL3pqNjFtSXhVdlJja2dFOEZjcXZZdW5rbFFa?= =?utf-8?B?aUIwbmcwOEwzZmUyOFFTNmYzQURYU3A5SE9GRVNYdVlDckpSSFRWMmUrWGZW?= =?utf-8?B?dTdUdEZxd3FzeWtkUEZwenNFRlNjcTA1NlNzSFdFWkxhUjZmMEJ0ZGZQVy85?= =?utf-8?B?Tkx5dVI2MjBWQlQyUFVDYnI4blZCM0NhbUlMQTJOZ1Q3Z0lZMjBKUHRMZm1F?= =?utf-8?B?Z2xta3hPWDFoVUR5NlU1M2dkdzdNVVNjR2piWDltMFhmVmRkVXNGbzhDS3dB?= =?utf-8?B?NTJXa3hvblJPTHp2L1o3cFF2N1ZYbWtldWRubnEvRzYyTkp6QWxHN0d6UFB6?= =?utf-8?B?b0JDUEZMdHB5OWNDYXg2WHlId2RFdFJSOHdxc1dQYUd1cHVXZ0Y0RGlqMm1i?= =?utf-8?B?c1JhTk00bUJHSmdRMTlVaHpkYzZpakJnUHFET3JoWnFBQUN4akEvZy9SL284?= =?utf-8?B?MkVibzhSM21DNTlycDdnc0tLTWVtZzAxcVgwczU0aHZkTlFTNEJtd3diN01w?= =?utf-8?B?a1lyWlVBeEZwTTA5WFRvMVNFOXZERHV5MUFDdHc1WUdCUnZ0Z2Q4eXN6ajBU?= =?utf-8?B?NStoaG9ONXAwWFJpTVFaeGJVZGlkUkNkTFVJYUZURWo1Sk9DSnFGYUlNay9E?= =?utf-8?B?d2FQQk1UZmlDZUhlS3UyWmJ2NFpTSTZiM00xZFQvVFZPT2k2OXBtM09MeHJj?= =?utf-8?B?WlVtdnoxNWhicTY5ZTlXekUxU285b3FTN3NQWUNjTWFKb25EWnZ5YklnPT0=?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0da7d6bf-446d-4b5d-65d0-08dc87ffea96 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2024 21:14:00.3747 (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: AM8P250MB0376 Subject: Re: [FFmpeg-devel] [PATCH 4/7] avformat/vvc: Fix crash on allocation failure, avoid allocations 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 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: TnVvIE1pOgo+IE9uIFdlZCwgSnVuIDUsIDIwMjQgYXQgNzo0MeKAr1BNIEFuZHJlYXMgUmhlaW5o YXJkdCA8Cj4gYW5kcmVhcy5yaGVpbmhhcmR0QG91dGxvb2suY29tPiB3cm90ZToKPiAKPj4gVGhp cyBpcyB0aGUgVlZDIHZlcnNpb24gb2YgOGI1ZDE1NTMwMTI3ZmVhNTRlOTM0MDQzYTY0NjUzODU5 ZGUwNzM1My4KPj4KPj4gKEhpbnQ6IFRoaXMgZW5zdXJlcyB0aGF0IHRoZSBvcmRlciBvZiBOQUxV IGFycmF5cyBpcyBPUEktVlBTLVNQUy1QUFMtCj4+IFByZWZpeC1TRUktU3VmZml4LVNFSSwgcmVn YXJkbGVzcyBvZiB0aGUgb3JkZXIgaW4gdGhlIG9yaWdpbmFsCj4+IGV4dHJhZGF0YS4gSSBob3Bl IHRoaXMgaXMgcmlnaHQuKQo+Pgo+PiBTaWduZWQtb2ZmLWJ5OiBBbmRyZWFzIFJoZWluaGFyZHQg PGFuZHJlYXMucmhlaW5oYXJkdEBvdXRsb29rLmNvbT4KPj4gLS0tCj4+ICBsaWJhdmZvcm1hdC92 dmMuYyB8IDE2OSArKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t Cj4+ICAxIGZpbGUgY2hhbmdlZCwgNzMgaW5zZXJ0aW9ucygrKSwgOTYgZGVsZXRpb25zKC0pCj4+ Cj4+IGRpZmYgLS1naXQgYS9saWJhdmZvcm1hdC92dmMuYyBiL2xpYmF2Zm9ybWF0L3Z2Yy5jCj4+ IGluZGV4IDY3OWJiMDdhNGQuLjgxOWVlMDJlMmMgMTAwNjQ0Cj4+IC0tLSBhL2xpYmF2Zm9ybWF0 L3Z2Yy5jCj4+ICsrKyBiL2xpYmF2Zm9ybWF0L3Z2Yy5jCj4+IEBAIC0zMiw2ICszMiwxNiBAQAo+ PiAgI2luY2x1ZGUgImF2aW9faW50ZXJuYWwuaCIKPj4gICNpbmNsdWRlICJ2dmMuaCIKPj4KPj4g K2VudW0gewo+PiArICAgIE9QSV9JTkRFWCwKPj4gKyAgICBWUFNfSU5ERVgsCj4+ICsgICAgU1BT X0lOREVYLAo+PiArICAgIFBQU19JTkRFWCwKPj4gKyAgICBTRUlfUFJFRklYX0lOREVYLAo+PiAr ICAgIFNFSV9TVUZGSVhfSU5ERVgsCj4+ICsgICAgTkJfQVJSQVlTCj4+ICt9Owo+PiArCj4+ICB0 eXBlZGVmIHN0cnVjdCBWVkNDTkFMVW5pdEFycmF5IHsKPj4gICAgICB1aW50OF90IGFycmF5X2Nv bXBsZXRlbmVzczsKPj4gICAgICB1aW50OF90IE5BTF91bml0X3R5cGU7Cj4+IEBAIC02Nyw3ICs3 Nyw3IEBAIHR5cGVkZWYgc3RydWN0IFZWQ0RlY29kZXJDb25maWd1cmF0aW9uUmVjb3JkIHsKPj4g ICAgICB1aW50MTZfdCBtYXhfcGljdHVyZV9oZWlnaHQ7Cj4+ICAgICAgdWludDE2X3QgYXZnX2Zy YW1lX3JhdGU7Cj4+ICAgICAgdWludDhfdCBudW1fb2ZfYXJyYXlzOwo+PiAtICAgIFZWQ0NOQUxV bml0QXJyYXkgKmFycmF5Owo+PiArICAgIFZWQ0NOQUxVbml0QXJyYXkgYXJyYXlzW05CX0FSUkFZ U107Cj4+ICB9IFZWQ0RlY29kZXJDb25maWd1cmF0aW9uUmVjb3JkOwo+Pgo+PiAgc3RhdGljIHZv aWQgdnZjY191cGRhdGVfcHRsKFZWQ0RlY29kZXJDb25maWd1cmF0aW9uUmVjb3JkICp2dmNjLAo+ PiBAQCAtNDMyLDMyICs0NDIsMTEgQEAgc3RhdGljIHZvaWQgbmFsX3VuaXRfcGFyc2VfaGVhZGVy KEdldEJpdENvbnRleHQgKmdiLAo+PiB1aW50OF90ICpuYWxfdHlwZSkKPj4KPj4gIHN0YXRpYyBp bnQgdnZjY19hcnJheV9hZGRfbmFsX3VuaXQodWludDhfdCAqbmFsX2J1ZiwgdWludDMyX3QgbmFs X3NpemUsCj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQ4X3QgbmFs X3R5cGUsIGludAo+PiBwc19hcnJheV9jb21wbGV0ZW5lc3MsCj4+IC0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFZWQ0RlY29kZXJDb25maWd1cmF0aW9uUmVjb3JkICp2dmNjKQo+ PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWVkNDTkFMVW5pdEFycmF5ICph cnJheSkKPj4gIHsKPj4gICAgICBpbnQgcmV0Owo+PiAtICAgIHVpbnQ4X3QgaW5kZXg7Cj4+ICAg ICAgdWludDE2X3QgbnVtX25hbHVzOwo+PiAtICAgIFZWQ0NOQUxVbml0QXJyYXkgKmFycmF5Owo+ PiAtCj4+IC0gICAgZm9yIChpbmRleCA9IDA7IGluZGV4IDwgdnZjYy0+bnVtX29mX2FycmF5czsg aW5kZXgrKykKPj4gLSAgICAgICAgaWYgKHZ2Y2MtPmFycmF5W2luZGV4XS5OQUxfdW5pdF90eXBl ID09IG5hbF90eXBlKQo+PiAtICAgICAgICAgICAgYnJlYWs7Cj4+IC0KPj4gLSAgICBpZiAoaW5k ZXggPj0gdnZjYy0+bnVtX29mX2FycmF5cykgewo+PiAtICAgICAgICB1aW50OF90IGk7Cj4+IC0K Pj4gLSAgICAgICAgcmV0ID0KPj4gLSAgICAgICAgICAgIGF2X3JlYWxsb2NwX2FycmF5KCZ2dmNj LT5hcnJheSwgaW5kZXggKyAxLAo+PiAtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6 ZW9mKFZWQ0NOQUxVbml0QXJyYXkpKTsKPj4gLSAgICAgICAgaWYgKHJldCA8IDApCj4+IC0gICAg ICAgICAgICByZXR1cm4gcmV0Owo+PiAtCj4+IC0gICAgICAgIGZvciAoaSA9IHZ2Y2MtPm51bV9v Zl9hcnJheXM7IGkgPD0gaW5kZXg7IGkrKykKPj4gLSAgICAgICAgICAgIG1lbXNldCgmdnZjYy0+ YXJyYXlbaV0sIDAsIHNpemVvZihWVkNDTkFMVW5pdEFycmF5KSk7Cj4+IC0gICAgICAgIHZ2Y2Mt Pm51bV9vZl9hcnJheXMgPSBpbmRleCArIDE7Cj4+IC0gICAgfQo+Pgo+PiAtICAgIGFycmF5ID0g JnZ2Y2MtPmFycmF5W2luZGV4XTsKPj4gICAgICBudW1fbmFsdXMgPSBhcnJheS0+bnVtX25hbHVz Owo+Pgo+PiAgICAgIHJldCA9IGF2X3JlYWxsb2NwX2FycmF5KCZhcnJheS0+bmFsX3VuaXQsIG51 bV9uYWx1cyArIDEsCj4+IHNpemVvZih1aW50OF90ICopKTsKPj4gQEAgLTUwNCw3ICs0OTMsOCBA QCBzdGF0aWMgaW50IHZ2Y2NfYXJyYXlfYWRkX25hbF91bml0KHVpbnQ4X3QgKm5hbF9idWYsCj4+ IHVpbnQzMl90IG5hbF9zaXplLAo+Pgo+PiAgc3RhdGljIGludCB2dmNjX2FkZF9uYWxfdW5pdCh1 aW50OF90ICpuYWxfYnVmLCB1aW50MzJfdCBuYWxfc2l6ZSwKPj4gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgaW50IHBzX2FycmF5X2NvbXBsZXRlbmVzcywKPj4gLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgVlZDRGVjb2RlckNvbmZpZ3VyYXRpb25SZWNvcmQgKnZ2Y2MpCj4+ICsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZWQ0RlY29kZXJDb25maWd1cmF0aW9uUmVjb3Jk ICp2dmNjLAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBhcnJheV9p ZHgpCj4+ICB7Cj4+ICAgICAgaW50IHJldCA9IDA7Cj4+ICAgICAgR2V0Qml0Q29udGV4dCBnYmM7 Cj4+IEBAIC01MjksMTggKzUxOSwxNSBAQCBzdGF0aWMgaW50IHZ2Y2NfYWRkX25hbF91bml0KHVp bnQ4X3QgKm5hbF9idWYsCj4+IHVpbnQzMl90IG5hbF9zaXplLAo+PiAgICAgICAqIHZ2Y2MuIFBl cmhhcHMgdGhlIFNFSSBwbGF5bG9hZCB0eXBlIHNob3VsZCBiZSBjaGVja2VkCj4+ICAgICAgICog YW5kIG5vbi1kZWNsYXJhdGl2ZSBTRUkgbWVzc2FnZXMgZGlzY2FyZGVkPwo+PiAgICAgICAqLwo+ PiAtICAgIHN3aXRjaCAobmFsX3R5cGUpIHsKPj4gLSAgICBjYXNlIFZWQ19PUElfTlVUOgo+PiAt ICAgIGNhc2UgVlZDX1ZQU19OVVQ6Cj4+IC0gICAgY2FzZSBWVkNfU1BTX05VVDoKPj4gLSAgICBj YXNlIFZWQ19QUFNfTlVUOgo+PiAtICAgIGNhc2UgVlZDX1BSRUZJWF9TRUlfTlVUOgo+PiAtICAg IGNhc2UgVlZDX1NVRkZJWF9TRUlfTlVUOgo+PiAtICAgICAgICByZXQgPSB2dmNjX2FycmF5X2Fk ZF9uYWxfdW5pdChuYWxfYnVmLCBuYWxfc2l6ZSwgbmFsX3R5cGUsCj4+IC0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHBzX2FycmF5X2NvbXBsZXRlbmVzcywgdnZjYyk7Cj4+ IC0gICAgICAgIGlmIChyZXQgPCAwKQo+PiAtICAgICAgICAgICAgZ290byBlbmQ7Cj4+IC0gICAg ICAgIGVsc2UgaWYgKG5hbF90eXBlID09IFZWQ19WUFNfTlVUKQo+PiArICAgIHJldCA9IHZ2Y2Nf YXJyYXlfYWRkX25hbF91bml0KG5hbF9idWYsIG5hbF9zaXplLCBuYWxfdHlwZSwKPj4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwc19hcnJheV9jb21wbGV0ZW5lc3MsCj4+ICsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnZ2Y2MtPmFycmF5c1thcnJheV9pZHhd KTsKPj4gKyAgICBpZiAocmV0IDwgMCkKPj4gKyAgICAgICAgZ290byBlbmQ7Cj4+ICsgICAgaWYg KHZ2Y2MtPmFycmF5c1thcnJheV9pZHhdLm51bV9uYWx1cyA9PSAxKQo+PiArICAgICAgICB2dmNj LT5udW1fb2ZfYXJyYXlzKys7Cj4+ICsKPj4gKyAgICAgICAgaWYgKG5hbF90eXBlID09IFZWQ19W UFNfTlVUKQo+PiAgICAgICAgICAgICAgcmV0ID0gdnZjY19wYXJzZV92cHMoJmdiYywgdnZjYyk7 Cj4+ICAgICAgICAgIGVsc2UgaWYgKG5hbF90eXBlID09IFZWQ19TUFNfTlVUKQo+PiAgICAgICAg ICAgICAgcmV0ID0gdnZjY19wYXJzZV9zcHMoJmdiYywgdnZjYyk7Cj4+IEBAIC01NTEsMTEgKzUz OCw2IEBAIHN0YXRpYyBpbnQgdnZjY19hZGRfbmFsX3VuaXQodWludDhfdCAqbmFsX2J1ZiwKPj4g dWludDMyX3QgbmFsX3NpemUsCj4+ICAgICAgICAgIH0KPj4gICAgICAgICAgaWYgKHJldCA8IDAp Cj4+ICAgICAgICAgICAgICBnb3RvIGVuZDsKPj4gLSAgICAgICAgYnJlYWs7Cj4+IC0gICAgZGVm YXVsdDoKPj4gLSAgICAgICAgcmV0ID0gQVZFUlJPUl9JTlZBTElEREFUQTsKPj4gLSAgICAgICAg Z290byBlbmQ7Cj4+IC0gICAgfQo+Pgo+PiAgICBlbmQ6Cj4+ICAgICAgYXZfZnJlZShyYnNwX2J1 Zik7Cj4+IEBAIC01NzIsMjIgKzU1NCwyMSBAQCBzdGF0aWMgdm9pZCB2dmNjX2luaXQoVlZDRGVj b2RlckNvbmZpZ3VyYXRpb25SZWNvcmQKPj4gKnZ2Y2MpCj4+Cj4+ICBzdGF0aWMgdm9pZCB2dmNj X2Nsb3NlKFZWQ0RlY29kZXJDb25maWd1cmF0aW9uUmVjb3JkICp2dmNjKQo+PiAgewo+PiAtICAg IHVpbnQ4X3QgaTsKPj4gKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgRkZfQVJSQVlfRUxF TVModnZjYy0+YXJyYXlzKTsgaSsrKSB7Cj4+ICsgICAgICAgIFZWQ0NOQUxVbml0QXJyYXkgKmNv bnN0IGFycmF5ID0gJnZ2Y2MtPmFycmF5c1tpXTsKPj4KPj4gLSAgICBmb3IgKGkgPSAwOyBpIDwg dnZjYy0+bnVtX29mX2FycmF5czsgaSsrKSB7Cj4+IC0gICAgICAgIHZ2Y2MtPmFycmF5W2ldLm51 bV9uYWx1cyA9IDA7Cj4+IC0gICAgICAgIGF2X2ZyZWVwKCZ2dmNjLT5hcnJheVtpXS5uYWxfdW5p dCk7Cj4+IC0gICAgICAgIGF2X2ZyZWVwKCZ2dmNjLT5hcnJheVtpXS5uYWxfdW5pdF9sZW5ndGgp Owo+PiArICAgICAgICBhcnJheS0+bnVtX25hbHVzID0gMDsKPj4gKyAgICAgICAgYXZfZnJlZXAo JmFycmF5LT5uYWxfdW5pdCk7Cj4+ICsgICAgICAgIGF2X2ZyZWVwKCZhcnJheS0+bmFsX3VuaXRf bGVuZ3RoKTsKPj4gICAgICB9Cj4+Cj4+ICAgICAgdnZjYy0+bnVtX29mX2FycmF5cyA9IDA7Cj4+ IC0gICAgYXZfZnJlZXAoJnZ2Y2MtPmFycmF5KTsKPj4gIH0KPj4KPj4gIHN0YXRpYyBpbnQgdnZj Y193cml0ZShBVklPQ29udGV4dCAqcGIsIFZWQ0RlY29kZXJDb25maWd1cmF0aW9uUmVjb3JkCj4+ ICp2dmNjKQo+PiAgewo+PiAgICAgIHVpbnQ4X3QgaTsKPj4gLSAgICB1aW50MTZfdCBqLCB2cHNf Y291bnQgPSAwLCBzcHNfY291bnQgPSAwLCBwcHNfY291bnQgPSAwOwo+PiArICAgIHVpbnQxNl90 IHZwc19jb3VudCA9IDAsIHNwc19jb3VudCA9IDAsIHBwc19jb3VudCA9IDA7Cj4+ICAgICAgLyoK Pj4gICAgICAgKiBJdCdzIHVuY2xlYXIgaG93IHRvIHByb3Blcmx5IGNvbXB1dGUgdGhlc2UgZmll bGRzLCBzbwo+PiAgICAgICAqIGxldCdzIGFsd2F5cyBzZXQgdGhlbSB0byB2YWx1ZXMgbWVhbmlu ZyAndW5zcGVjaWZpZWQnLgo+PiBAQCAtNjcyLDQwICs2NTMsMzMgQEAgc3RhdGljIGludCB2dmNj X3dyaXRlKEFWSU9Db250ZXh0ICpwYiwKPj4gVlZDRGVjb2RlckNvbmZpZ3VyYXRpb25SZWNvcmQg KnZ2Y2MpCj4+ICAgICAgYXZfbG9nKE5VTEwsIEFWX0xPR19UUkFDRSwKPj4gICAgICAgICAgICAg Im51bV9vZl9hcnJheXM6ICAgICAgICAgICAgICAgICAgICAgICAlIiBQUkl1OCAiXG4iLAo+PiAg ICAgICAgICAgICB2dmNjLT5udW1fb2ZfYXJyYXlzKTsKPj4gLSAgICBmb3IgKGkgPSAwOyBpIDwg dnZjYy0+bnVtX29mX2FycmF5czsgaSsrKSB7Cj4+ICsgICAgZm9yICh1bnNpZ25lZCBpID0gMDsg aSA8IEZGX0FSUkFZX0VMRU1TKHZ2Y2MtPmFycmF5cyk7IGkrKykgewo+Pgo+IHRoaXMgd2lsbCBz aGFkb3cgdGhlICJ1aW50OF90IGkiCj4gCgpJIGp1c3Qgc2VudCBhIHBhdGNoIGZvciB0aGlzIChh bmQgZm9yIGZpeGluZyB0aGUgY29tbWVudCkuCgotIEFuZHJlYXMKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmZmbXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QK ZmZtcGVnLWRldmVsQGZmbXBlZy5vcmcKaHR0cHM6Ly9mZm1wZWcub3JnL21haWxtYW4vbGlzdGlu Zm8vZmZtcGVnLWRldmVsCgpUbyB1bnN1YnNjcmliZSwgdmlzaXQgbGluayBhYm92ZSwgb3IgZW1h aWwKZmZtcGVnLWRldmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2Ny aWJlIi4K