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 ESMTPS id 7B7A84E254 for ; Tue, 29 Apr 2025 22:42:47 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A40BA68B0ED; Wed, 30 Apr 2025 01:42:42 +0300 (EEST) Received: from mail-yb1-f180.google.com (mail-yb1-f180.google.com [209.85.219.180]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 20335687BCD for ; Wed, 30 Apr 2025 01:42:35 +0300 (EEST) Received: by mail-yb1-f180.google.com with SMTP id 3f1490d57ef6-e72bb146baeso5462935276.3 for ; Tue, 29 Apr 2025 15:42:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1745966553; x=1746571353; darn=ffmpeg.org; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=cvpeMa7Q4fbtm8dCGEedE1J6v0rJtVzSKGLiwyS9Fg8=; b=AqzD/O3OegKwX6DqS5b5AlV1oQ8Tg3MT1n4avKztDCIFxZ65x3+W/Aj6hWq50IeHEU VbbkGC0acF2DXIxjstIyJSBFHN+CaH7KtjLxkvpp1i1zMc/+yUb8IEpUQ8pymMSCZJEt EtdqsRq41Flg6Qhq2BUezTgwXBbKVR/oekPqtZpIzyX1imrXy+0r5uMykBmzOyK9bs/p br3QeaxDU29l/HcjGdfufkO5/o51Xu8IZHPPweXcjm1hhwY4Tv9viGvZlg4v6TSINL1e upw4MXswD36jfGfQuhA7cnCcpNgax9JLXD/jzbltkMqk64MOtPvT4otab+n6Jtl9tS1F +yKg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1745966553; x=1746571353; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=cvpeMa7Q4fbtm8dCGEedE1J6v0rJtVzSKGLiwyS9Fg8=; b=YHPwHbZAFmr+jFGSWKh2u35gtNc6FL2gq7Qh2/bTcMmgGZEbaqduSpQ5pnQ7amPAKM KpMLR93W8fkfjt5zYErPg4iJIgTV8a/FTn6GNaKLqMO7gxMriLoQnI9Yg6GfTv9cawsB mfRTHSDeynCFQeZKfC8P9lR/5cY1azCihMPLvw1422a9Ka4jn9Cgbw0oyqjdECFqGHsw JDnFMhPev4qw/T1IFlnELD1l97npdVGRaNpRH0LifQS7+AtywbHWTWDA5YSp1WR3Yh6p BPIhLMhc/5jHCYhjwZ5CENlyIfe0sggzVvgfS6785RMWwzqiisa9u6kTjToxHLV2DtYs uSxg== X-Gm-Message-State: AOJu0YzuNe8OIKWi9ycq4hflNgFpcFzPtYTG2SbF6JHdqJnG5UzoxzCc 0quctGssmPhf/IEQlp3EMiXkfTY1A2ED9/stvNdoocCEk+z9CcksQf4GW05wrSq1vgMbSIa37jx VtKGtxslcfKuDCUqFomEZ5VARUU2Hi4WSg8E= X-Gm-Gg: ASbGncu3M3T28y0Wuv8+apJlPeipEvDQxn6Y45LSynZvsIwxEHhE7eBqaD2dvCxN7rw BREtijbqcwIJbAREY4u9/J2S9RUtemsYM67PX+wh+2JtSaptJ3Sw8fHl37EvDBD0mDi5jeF9tM5 0Vvqqe68YQSFhMfUSjj7mZEZA= X-Google-Smtp-Source: AGHT+IFCHjb3k4l/cm6ohbDQu4VwK8OHY6q2D/8UCnvnIZK+I3OKNDcefBYNA5L+/BHcQ4g3aYnU22bynRGURjIHWxE= X-Received: by 2002:a05:6902:2786:b0:e73:2257:cc58 with SMTP id 3f1490d57ef6-e73ebfd2624mr1448066276.31.1745966553028; Tue, 29 Apr 2025 15:42:33 -0700 (PDT) MIME-Version: 1.0 References: <20250428233136.37007-1-romain.beauxis@gmail.com> <20250428233136.37007-3-romain.beauxis@gmail.com> <20250429213511.GR4991@pb2> In-Reply-To: <20250429213511.GR4991@pb2> From: Romain Beauxis Date: Tue, 29 Apr 2025 17:42:22 -0500 X-Gm-Features: ATxdqUFOo3p2vSq91ob97V8IQ6A1dLrSnI7auxy6IT2sQiB4RXKKS7RxJwumFv0 Message-ID: To: FFmpeg development discussions and patches Subject: Re: [FFmpeg-devel] [PATCH v2 2/2] ogg/{vorbis, flac, opus}: Remove header packets from subsequent ogg streams from the demuxer output. 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: TGUgbWFyLiAyOSBhdnIuIDIwMjUgw6AgMTY6MzUsIE1pY2hhZWwgTmllZGVybWF5ZXIKPG1pY2hh ZWxAbmllZGVybWF5ZXIuY2M+IGEgw6ljcml0IDoKPgo+IEhpCj4KPiBPbiBNb24sIEFwciAyOCwg MjAyNSBhdCAwNjozMTozNlBNIC0wNTAwLCBSb21haW4gQmVhdXhpcyB3cm90ZToKPiA+IC0tLQo+ ID4gIGxpYmF2Zm9ybWF0L29nZ2RlYy5jICAgICAgICAgICAgICAgICAgICAgICB8IDI2ICsrKysr KysrKystLS0tLS0tLS0tCj4gPiAgbGliYXZmb3JtYXQvb2dnZGVjLmggICAgICAgICAgICAgICAg ICAgICAgIHwgIDYgKysrKysKPiA+ICBsaWJhdmZvcm1hdC9vZ2dwYXJzZWZsYWMuYyAgICAgICAg ICAgICAgICAgfCAyOCArKysrKysrKysrKysrKysrKysrKy0tCj4gPiAgbGliYXZmb3JtYXQvb2dn cGFyc2VvcHVzLmMgICAgICAgICAgICAgICAgIHwgMTIgKysrKysrKysrKwo+ID4gIGxpYmF2Zm9y bWF0L29nZ3BhcnNldm9yYmlzLmMgICAgICAgICAgICAgICB8IDEyICsrKysrKysrLS0KPiA+ICB0 ZXN0cy9yZWYvZmF0ZS9vZ2ctZmxhYy1jaGFpbmVkLW1ldGEudHh0ICAgfCAgMiAtLQo+ID4gIHRl c3RzL3JlZi9mYXRlL29nZy1vcHVzLWNoYWluZWQtbWV0YS50eHQgICB8ICAxIC0KPiA+ICB0ZXN0 cy9yZWYvZmF0ZS9vZ2ctdm9yYmlzLWNoYWluZWQtbWV0YS50eHQgfCAgMyAtLS0KPiA+ICA4IGZp bGVzIGNoYW5nZWQsIDY4IGluc2VydGlvbnMoKyksIDIyIGRlbGV0aW9ucygtKQo+ID4KPiA+IGRp ZmYgLS1naXQgYS9saWJhdmZvcm1hdC9vZ2dkZWMuYyBiL2xpYmF2Zm9ybWF0L29nZ2RlYy5jCj4g PiBpbmRleCA1MzM5ZmRkMzJjLi41NTU3ZWI0YTE0IDEwMDY0NAo+ID4gLS0tIGEvbGliYXZmb3Jt YXQvb2dnZGVjLmMKPiA+ICsrKyBiL2xpYmF2Zm9ybWF0L29nZ2RlYy5jCj4gPiBAQCAtMjM5LDEw ICsyMzksNiBAQCBzdGF0aWMgaW50IG9nZ19yZXBsYWNlX3N0cmVhbShBVkZvcm1hdENvbnRleHQg KnMsIHVpbnQzMl90IHNlcmlhbCwgY2hhciAqbWFnaWMsCj4gPiAgICAgIG9zLT5zdGFydF90cmlt bWluZyA9IDA7Cj4gPiAgICAgIG9zLT5lbmRfdHJpbW1pbmcgPSAwOwo+ID4KPiA+IC0gICAgLyog Q2hhaW5lZCBmaWxlcyBoYXZlIGV4dHJhZGF0YSBhcyBhIG5ldyBwYWNrZXQgKi8KPiA+IC0gICAg aWYgKGNvZGVjID09ICZmZl9vcHVzX2NvZGVjKQo+ID4gLSAgICAgICAgb3MtPmhlYWRlciA9IC0x Owo+ID4gLQo+ID4gICAgICByZXR1cm4gaTsKPiA+ICB9Cj4gPgo+ID4gQEAgLTYwNSwyMCArNjAx LDI2IEBAIHN0YXRpYyBpbnQgb2dnX3BhY2tldChBVkZvcm1hdENvbnRleHQgKnMsIGludCAqc2lk LCBpbnQgKmRzdGFydCwgaW50ICpkc2l6ZSwKPiA+ICAgICAgfSBlbHNlIHsKPiA+ICAgICAgICAg IG9zLT5wZmxhZ3MgICAgPSAwOwo+ID4gICAgICAgICAgb3MtPnBkdXJhdGlvbiA9IDA7Cj4gPiAr Cj4gPiArICAgICAgICByZXQgPSAwOwo+ID4gICAgICAgICAgaWYgKG9zLT5jb2RlYyAmJiBvcy0+ Y29kZWMtPnBhY2tldCkgewo+ID4gICAgICAgICAgICAgIGlmICgocmV0ID0gb3MtPmNvZGVjLT5w YWNrZXQocywgaWR4KSkgPCAwKSB7Cj4gPiAgICAgICAgICAgICAgICAgIGF2X2xvZyhzLCBBVl9M T0dfRVJST1IsICJQYWNrZXQgcHJvY2Vzc2luZyBmYWlsZWQ6ICVzXG4iLCBhdl9lcnIyc3RyKHJl dCkpOwo+ID4gICAgICAgICAgICAgICAgICByZXR1cm4gcmV0Owo+ID4gICAgICAgICAgICAgIH0K PiA+ICAgICAgICAgIH0KPiA+IC0gICAgICAgIGlmIChzaWQpCj4gPiAtICAgICAgICAgICAgKnNp ZCA9IGlkeDsKPiA+IC0gICAgICAgIGlmIChkc3RhcnQpCj4gPiAtICAgICAgICAgICAgKmRzdGFy dCA9IG9zLT5wc3RhcnQ7Cj4gPiAtICAgICAgICBpZiAoZHNpemUpCj4gPiAtICAgICAgICAgICAg KmRzaXplID0gb3MtPnBzaXplOwo+ID4gLSAgICAgICAgaWYgKGZwb3MpCj4gPiAtICAgICAgICAg ICAgKmZwb3MgPSBvcy0+c3luY19wb3M7Cj4gPiArCj4gPiArICAgICAgICBpZiAoIXJldCkgewo+ ID4gKyAgICAgICAgICAgIGlmIChzaWQpCj4gPiArICAgICAgICAgICAgICAgICpzaWQgPSBpZHg7 Cj4gPiArICAgICAgICAgICAgaWYgKGRzdGFydCkKPiA+ICsgICAgICAgICAgICAgICAgKmRzdGFy dCA9IG9zLT5wc3RhcnQ7Cj4gPiArICAgICAgICAgICAgaWYgKGRzaXplKQo+ID4gKyAgICAgICAg ICAgICAgICAqZHNpemUgPSBvcy0+cHNpemU7Cj4gPiArICAgICAgICAgICAgaWYgKGZwb3MpCj4g PiArICAgICAgICAgICAgICAgICpmcG9zID0gb3MtPnN5bmNfcG9zOwo+ID4gKyAgICAgICAgfQo+ ID4gKwo+ID4gICAgICAgICAgb3MtPnBzdGFydCAgKz0gb3MtPnBzaXplOwo+ID4gICAgICAgICAg b3MtPnBzaXplICAgID0gMDsKPiA+ICAgICAgICAgIGlmKG9zLT5wc3RhcnQgPT0gb3MtPmJ1ZnBv cykKPgo+ID4gZGlmZiAtLWdpdCBhL2xpYmF2Zm9ybWF0L29nZ2RlYy5oIGIvbGliYXZmb3JtYXQv b2dnZGVjLmgKPiA+IGluZGV4IDQzZGYyM2Y0Y2IuLjA5ZjY5OGY5OWEgMTAwNjQ0Cj4gPiAtLS0g YS9saWJhdmZvcm1hdC9vZ2dkZWMuaAo+ID4gKysrIGIvbGliYXZmb3JtYXQvb2dnZGVjLmgKPiA+ IEBAIC0zOCw2ICszOCwxMiBAQCBzdHJ1Y3Qgb2dnX2NvZGVjIHsKPiA+ICAgICAgICogICAgICAg ICAtMSBpZiBhbiBlcnJvciBvY2N1cnJlZCBvciBmb3IgdW5zdXBwb3J0ZWQgc3RyZWFtCj4gPiAg ICAgICAqLwo+ID4gICAgICBpbnQgKCpoZWFkZXIpKEFWRm9ybWF0Q29udGV4dCAqLCBpbnQpOwo+ ID4gKyAgICAvKioKPiA+ICsgICAgICogQXR0ZW1wdCB0byBwcm9jZXNzIGEgcGFja2V0IGFzIGEg ZGF0YSBwYWNrZXQKPiA+ICsgICAgICogQHJldHVybiAxIGlmIHRoZSBwYWNrZXQgd2FzIGEgaGVh ZGVyIGZyb20gYSBjaGFpbmVkIGJpdHN0cmVhbS4KPiA+ICsgICAgICogICAgICAgICAwIGlmIHRo ZSBwYWNrZXQgd2FzIGEgcmVndWxhciBkYXRhIHBhY2tldC4KPiA+ICsgICAgICogICAgICAgICAt MSBpZiBhbiBlcnJvciBvY2N1cnJlZCBvciBmb3IgdW5zdXBwb3J0ZWQgc3RyZWFtCj4gPiArICAg ICAqLwo+ID4gICAgICBpbnQgKCpwYWNrZXQpKEFWRm9ybWF0Q29udGV4dCAqLCBpbnQpOwo+ID4g ICAgICAvKioKPiA+ICAgICAgICogVHJhbnNsYXRlIGEgZ3JhbnVsZSBpbnRvIGEgdGltZXN0YW1w Lgo+Cj4gb2ssIGJ1dCBzZWVtcyB1bnJlbGF0ZWQKClRoaXMgaXMgYSBuZXcgY29udmVudGlvbiB0 byBhbGxvdyB0aGUgcGFyc2VyIHRvIGtub3cgd2hlbiB0byBza2lwIGEKcGFja2V0LiBQcmV2aW91 cyB0byB0aGF0LCByZXR1cm4gdmFsdWUgb2YgMSBkaWQgbm90IGhhdmUgc3BlY2lmaWMKbWVhbmlu Zy4KCj4gPiBkaWZmIC0tZ2l0IGEvbGliYXZmb3JtYXQvb2dncGFyc2VmbGFjLmMgYi9saWJhdmZv cm1hdC9vZ2dwYXJzZWZsYWMuYwo+ID4gaW5kZXggZjI1ZWQ5Y2MxNS4uZDY2Yjg1YjA5ZSAxMDA2 NDQKPiA+IC0tLSBhL2xpYmF2Zm9ybWF0L29nZ3BhcnNlZmxhYy5jCj4gPiArKysgYi9saWJhdmZv cm1hdC9vZ2dwYXJzZWZsYWMuYwo+ID4gQEAgLTI3LDYgKzI3LDggQEAKPiA+ICAjaW5jbHVkZSAi b2dnZGVjLmgiCj4gPgo+ID4gICNkZWZpbmUgT0dHX0ZMQUNfTUVUQURBVEFfVFlQRV9TVFJFQU1J TkZPIDB4N0YKPiA+ICsjZGVmaW5lIE9HR19GTEFDX01BR0lDICJcMTc3RkxBQyIKPiA+ICsjZGVm aW5lIE9HR19GTEFDX01BR0lDX1NJWkUgc2l6ZW9mKE9HR19GTEFDX01BR0lDKS0xCj4KPiBmYWN0 b3JpbmcgdGhpcyBvdXQgY291bGQgYmUgYSBzZXBlcmF0ZSBwYXRjaAo+Cj4KPiA+Cj4gPiAgc3Rh dGljIGludAo+ID4gIGZsYWNfaGVhZGVyIChBVkZvcm1hdENvbnRleHQgKiBzLCBpbnQgaWR4KQo+ ID4gQEAgLTc4LDYgKzgwLDI3IEBAIGZsYWNfaGVhZGVyIChBVkZvcm1hdENvbnRleHQgKiBzLCBp bnQgaWR4KQo+ID4gICAgICByZXR1cm4gMTsKPiA+ICB9Cj4gPgo+ID4gK3N0YXRpYyBpbnQKPiA+ ICtmbGFjX3BhY2tldCAoQVZGb3JtYXRDb250ZXh0ICogcywgaW50IGlkeCkKPiA+ICt7Cj4gPiAr ICAgIHN0cnVjdCBvZ2cgKm9nZyA9IHMtPnByaXZfZGF0YTsKPiA+ICsgICAgc3RydWN0IG9nZ19z dHJlYW0gKm9zID0gb2dnLT5zdHJlYW1zICsgaWR4Owo+ID4gKwo+ID4gKyAgICBpZiAob3MtPnBz aXplID4gT0dHX0ZMQUNfTUFHSUNfU0laRSAmJgo+ID4gKyAgICAgICAgIW1lbWNtcCgKPiA+ICsg ICAgICAgICAgICBvcy0+YnVmICsgb3MtPnBzdGFydCwKPiA+ICsgICAgICAgICAgICBPR0dfRkxB Q19NQUdJQywKPiA+ICsgICAgICAgICAgICBPR0dfRkxBQ19NQUdJQ19TSVpFKSkKPiA+ICsgICAg ICAgIHJldHVybiAxOwo+ID4gKwo+ID4gKyAgICBpZiAob3MtPnBzaXplID4gMCAmJgo+ID4gKyAg ICAgICAgKChvcy0+YnVmW29zLT5wc3RhcnRdICYgMHg3RikgPT0gRkxBQ19NRVRBREFUQV9UWVBF X1ZPUkJJU19DT01NRU5UKSkgewo+ID4gKyAgICAgICAgcmV0dXJuIDE7Cj4gPiArICAgIH0KPiA+ ICsKPiA+ICsgICAgcmV0dXJuIDA7Cj4gPiArfQo+ID4gKwo+ID4gIHN0YXRpYyBpbnQKPiA+ICBv bGRfZmxhY19oZWFkZXIgKEFWRm9ybWF0Q29udGV4dCAqIHMsIGludCBpZHgpCj4gPiAgewo+ID4g QEAgLTEyNywxMCArMTUwLDExIEBAIGZhaWw6Cj4gPiAgfQo+ID4KPiA+ICBjb25zdCBzdHJ1Y3Qg b2dnX2NvZGVjIGZmX2ZsYWNfY29kZWMgPSB7Cj4gPiAtICAgIC5tYWdpYyA9ICJcMTc3RkxBQyIs Cj4gPiAtICAgIC5tYWdpY3NpemUgPSA1LAo+ID4gKyAgICAubWFnaWMgPSBPR0dfRkxBQ19NQUdJ QywKPiA+ICsgICAgLm1hZ2ljc2l6ZSA9IE9HR19GTEFDX01BR0lDX1NJWkUsCj4gPiAgICAgIC5o ZWFkZXIgPSBmbGFjX2hlYWRlciwKPiA+ICAgICAgLm5iX2hlYWRlciA9IDIsCj4gPiArICAgIC5w YWNrZXQgPSBmbGFjX3BhY2tldCwKPiA+ICB9Owo+ID4KPiA+ICBjb25zdCBzdHJ1Y3Qgb2dnX2Nv ZGVjIGZmX29sZF9mbGFjX2NvZGVjID0gewo+Cj4gPiBkaWZmIC0tZ2l0IGEvbGliYXZmb3JtYXQv b2dncGFyc2VvcHVzLmMgYi9saWJhdmZvcm1hdC9vZ2dwYXJzZW9wdXMuYwo+ID4gaW5kZXggMjE4 ZTlkZjU4MS4uMDdkZGJhOGM4MiAxMDA2NDQKPiA+IC0tLSBhL2xpYmF2Zm9ybWF0L29nZ3BhcnNl b3B1cy5jCj4gPiArKysgYi9saWJhdmZvcm1hdC9vZ2dwYXJzZW9wdXMuYwo+ID4gQEAgLTgxLDYg KzgxLDcgQEAgc3RhdGljIGludCBvcHVzX2hlYWRlcihBVkZvcm1hdENvbnRleHQgKmF2ZiwgaW50 IGlkeCkKPiA+ICAgICAgaWYgKHByaXYtPm5lZWRfY29tbWVudHMpIHsKPiA+ICAgICAgICAgIGlm IChvcy0+cHNpemUgPCA4IHx8IG1lbWNtcChwYWNrZXQsICJPcHVzVGFncyIsIDgpKQo+ID4gICAg ICAgICAgICAgIHJldHVybiBBVkVSUk9SX0lOVkFMSUREQVRBOwo+ID4gKwo+ID4gICAgICAgICAg ZmZfdm9yYmlzX3N0cmVhbV9jb21tZW50KGF2Ziwgc3QsIHBhY2tldCArIDgsIG9zLT5wc2l6ZSAt IDgpOwo+ID4gICAgICAgICAgcHJpdi0+bmVlZF9jb21tZW50cy0tOwo+ID4gICAgICAgICAgcmV0 dXJuIDE7Cj4KPiBzdHJheSBjaGFuZ2UKPgo+Cj4gPiBAQCAtMTI1LDYgKzEyNiwxNyBAQCBzdGF0 aWMgaW50IG9wdXNfcGFja2V0KEFWRm9ybWF0Q29udGV4dCAqYXZmLCBpbnQgaWR4KQo+ID4gICAg ICAgICAgcmV0dXJuIEFWRVJST1JfSU5WQUxJRERBVEE7Cj4gPiAgICAgIH0KPiA+Cj4gPiArICAg ICBpZiAob3MtPnBzaXplID4gOCAmJiAhbWVtY21wKHBhY2tldCwgIk9wdXNIZWFkIiwgOCkpIHsK PiA+ICsgICAgICAgIGlmICgocmV0ID0gZmZfYWxsb2NfZXh0cmFkYXRhKHN0LT5jb2RlY3Bhciwg b3MtPnBzaXplKSkgPCAwKQo+ID4gKyAgICAgICAgICAgIHJldHVybiByZXQ7Cj4gPiArCj4gPiAr ICAgICAgICBtZW1jcHkoc3QtPmNvZGVjcGFyLT5leHRyYWRhdGEsIHBhY2tldCwgb3MtPnBzaXpl KTsKPiA+ICsgICAgICAgIHJldHVybiAxOwo+ID4gKyAgICB9Cj4gPiArCj4gPiArICAgIGlmIChv cy0+cHNpemUgPiA4ICYmICFtZW1jbXAocGFja2V0LCAiT3B1c1RhZ3MiLCA4KSkKPiA+ICsgICAg ICAgIHJldHVybiAxOwo+ID4gKwo+ID4gICAgICBpZiAoKCFvcy0+bGFzdHB0cyB8fCBvcy0+bGFz dHB0cyA9PSBBVl9OT1BUU19WQUxVRSkgJiYgIShvcy0+ZmxhZ3MgJiBPR0dfRkxBR19FT1MpKSB7 Cj4gPiAgICAgICAgICBpbnQgc2VnLCBkOwo+ID4gICAgICAgICAgaW50IGR1cmF0aW9uOwo+ID4g ZGlmZiAtLWdpdCBhL2xpYmF2Zm9ybWF0L29nZ3BhcnNldm9yYmlzLmMgYi9saWJhdmZvcm1hdC9v Z2dwYXJzZXZvcmJpcy5jCj4gPiBpbmRleCA5ZjUwYWI5ZmZjLi4yNDhhYzRhNDE2IDEwMDY0NAo+ ID4gLS0tIGEvbGliYXZmb3JtYXQvb2dncGFyc2V2b3JiaXMuYwo+ID4gKysrIGIvbGliYXZmb3Jt YXQvb2dncGFyc2V2b3JiaXMuYwo+ID4gQEAgLTQxOCw2ICs0MTgsNyBAQCBzdGF0aWMgaW50IHZv cmJpc19wYWNrZXQoQVZGb3JtYXRDb250ZXh0ICpzLCBpbnQgaWR4KQo+ID4gICAgICBzdHJ1Y3Qg b2dnX3N0cmVhbSAqb3MgPSBvZ2ctPnN0cmVhbXMgKyBpZHg7Cj4gPiAgICAgIHN0cnVjdCBvZ2d2 b3JiaXNfcHJpdmF0ZSAqcHJpdiA9IG9zLT5wcml2YXRlOwo+ID4gICAgICBpbnQgZHVyYXRpb24s IGZsYWdzID0gMDsKPiA+ICsgICAgaW50IHNraXBfcGFja2V0ID0gMDsKPiA+Cj4gPiAgICAgIGlm ICghcHJpdi0+dnApCj4gPiAgICAgICAgICByZXR1cm4gQVZFUlJPUl9JTlZBTElEREFUQTsKPgo+ ID4gQEAgLTQ3NywxMCArNDc4LDE3IEBAIHN0YXRpYyBpbnQgdm9yYmlzX3BhY2tldChBVkZvcm1h dENvbnRleHQgKnMsIGludCBpZHgpCj4gPiAgICAgIC8qIHBhcnNlIHBhY2tldCBkdXJhdGlvbiAq Lwo+ID4gICAgICBpZiAob3MtPnBzaXplID4gMCkgewo+ID4gICAgICAgICAgZHVyYXRpb24gPSBh dl92b3JiaXNfcGFyc2VfZnJhbWVfZmxhZ3MocHJpdi0+dnAsIG9zLT5idWYgKyBvcy0+cHN0YXJ0 LCAxLCAmZmxhZ3MpOwo+ID4gKwo+ID4gICAgICAgICAgaWYgKGR1cmF0aW9uIDwgMCkgewo+Cj4g c3RyYXkgY2hhbmdlCj4KPiBbLi4uXQoKClRoYW5rcyBmb3IgdGhlIHJldmlldy4gWW91IGNhbiBm aW5kIGFuIHVwZGF0ZWQgY29tbWl0IGhlcmUgaWYgeW91IHdhbnQKdG8gYXZvaWQgYW5vdGhlciBw b3N0IHRvIHRoZSBNTDoKaHR0cHM6Ly9naXRodWIuY29tL3Rvb3RzL0ZGbXBlZy9jb21taXQvMTQw YzRjYWZlNjYwYWJlZDY3MjEyYTRiNGMxMjg2MjhiNGRkMDFmNQoKPiB0aHgKPgo+IC0tCj4gTWlj aGFlbCAgICAgR251UEcgZmluZ2VycHJpbnQ6IDlGRjIxMjhCMTQ3RUY2NzMwQkFERjEzMzYxMUVD Nzg3MDQwQjBGQUIKPgo+IEkgYW0gdGhlIHdpc2VzdCBtYW4gYWxpdmUsIGZvciBJIGtub3cgb25l IHRoaW5nLCBhbmQgdGhhdCBpcyB0aGF0IEkga25vdwo+IG5vdGhpbmcuIC0tIFNvY3JhdGVzCj4g X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBmZm1wZWct ZGV2ZWwgbWFpbGluZyBsaXN0Cj4gZmZtcGVnLWRldmVsQGZmbXBlZy5vcmcKPiBodHRwczovL2Zm bXBlZy5vcmcvbWFpbG1hbi9saXN0aW5mby9mZm1wZWctZGV2ZWwKPgo+IFRvIHVuc3Vic2NyaWJl LCB2aXNpdCBsaW5rIGFib3ZlLCBvciBlbWFpbAo+IGZmbXBlZy1kZXZlbC1yZXF1ZXN0QGZmbXBl Zy5vcmcgd2l0aCBzdWJqZWN0ICJ1bnN1YnNjcmliZSIuCl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fCmZmbXBlZy1kZXZlbCBtYWlsaW5nIGxpc3QKZmZtcGVn LWRldmVsQGZmbXBlZy5vcmcKaHR0cHM6Ly9mZm1wZWcub3JnL21haWxtYW4vbGlzdGluZm8vZmZt cGVnLWRldmVsCgpUbyB1bnN1YnNjcmliZSwgdmlzaXQgbGluayBhYm92ZSwgb3IgZW1haWwKZmZt cGVnLWRldmVsLXJlcXVlc3RAZmZtcGVnLm9yZyB3aXRoIHN1YmplY3QgInVuc3Vic2NyaWJlIi4K