From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Gregory Heytings Newsgroups: gmane.emacs.bugs Subject: bug#61514: 30.0.50; sadistically long xml line hangs emacs Date: Mon, 20 Feb 2023 02:05:59 +0000 Message-ID: References: <87lel0c65v.fsf@everybody.org> <838rgvymcd.fsf@gnu.org> <886c06e50e9cfacb7954@heytings.org> <83h6vixik1.fsf@gnu.org> <886c06e50e707ab83560@heytings.org> <886c06e50e876183758c@heytings.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="TAu4gfOE4u" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="2833"; mail-complaints-to="usenet@ciao.gmane.io" Cc: mah@everybody.org, 61514@debbugs.gnu.org, Stefan Monnier To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Mon Feb 20 03:07:24 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pTvaM-0000XK-U6 for geb-bug-gnu-emacs@m.gmane-mx.org; Mon, 20 Feb 2023 03:07:23 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pTva4-0005jp-3l; Sun, 19 Feb 2023 21:07:04 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pTva2-0005jf-O3 for bug-gnu-emacs@gnu.org; Sun, 19 Feb 2023 21:07:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pTva2-0005qG-Fx for bug-gnu-emacs@gnu.org; Sun, 19 Feb 2023 21:07:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pTva1-0006rB-UR for bug-gnu-emacs@gnu.org; Sun, 19 Feb 2023 21:07:01 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Gregory Heytings Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 20 Feb 2023 02:07:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 61514 X-GNU-PR-Package: emacs Original-Received: via spool by 61514-submit@debbugs.gnu.org id=B61514.167685876426278 (code B ref 61514); Mon, 20 Feb 2023 02:07:01 +0000 Original-Received: (at 61514) by debbugs.gnu.org; 20 Feb 2023 02:06:04 +0000 Original-Received: from localhost ([127.0.0.1]:50051 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pTvZ5-0006pm-ED for submit@debbugs.gnu.org; Sun, 19 Feb 2023 21:06:03 -0500 Original-Received: from heytings.org ([95.142.160.155]:36308) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pTvZ2-0006pJ-UH for 61514@debbugs.gnu.org; Sun, 19 Feb 2023 21:06:01 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heytings.org; s=20220101; t=1676858759; bh=RKa7OEsqCKulDFRNVwCF/EW5I33hnZU4/r1/L63U4D0=; h=Date:From:To:cc:Subject:In-Reply-To:Message-ID:References:From; b=tpR535abhq0S8JkAGMT+AasOOPfpCwtFB+n6sN5vRVSgPu44YYjhpvpgviJpz5Erd 9od5oEn1fhKLn86gsBlLTp6dC7JmCfpAOMCVBG29k2+x9Ao6ZJ3wzDXmKQw3zVS3nX 5Aj0SYG0cOhR8xX5lLt2J0gDU51zWmP8KtOGoZNnWoCIYaKMs1vfd+WZ1yBTqdQzJt 49bxLu/hL5eX6HMP5w3L9Hpk6mTTJ6tyBgbQPdTw3oS8oltIOPpXyplSsMc6d0NiHO lhC9shss6xso0EMpwgmnCpNj1g/5ll+y1U180Apryi1yT5kIyOolNrhzbAOpJ8RJnG PKC2tt3m9GLcw== In-Reply-To: <886c06e50e876183758c@heytings.org> Content-ID: X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:256125 Archived-At: --TAu4gfOE4u Content-Type: text/plain; charset=us-ascii; format=flowed Content-ID: >> Lowering emacs_re_max_failures just makes the regexp engine fail >> earlier, because there is not enough room in the failure stack. In a >> sense it is better to fail earlier, but to do that in all cases, we >> would have to lower emacs_re_max_failures say to 10000, which I guess >> wouldn't be good because the it would fail too much. > > BTW, this makes me wonder why emacs_re_max_failures is not accessible > from Elisp. I think it would be very useful, if only for debugging > purposes. And perhaps let-binding it to a lower value around some > potentially (or actually) problematic regexps would be a good way to > prevent or fix bugs such as the current one. > Looking at the history of that variable, which is in fact a compile-time constant, I see that it was initially (May 1995) set to 200000. A few months later (Nov 1995) it was set to 20000, and reduced again (apparently because of bug reports) to 8000 and to 4000 (both in Jun 1996). Two months later it was again set to 20000 (Aug 1996), and a year later to 40000 (Dec 1997). It kept that value since then. As these changes (and this bug report) demonstrate, it is not possible to give that variable a "one size fits all" value. Here's a patch that makes it modifiable, and "fixes" (in the sense of failing with a "Stack overflow in regexp matcher" instead of inflooping) the current bug. WDYT? --TAu4gfOE4u Content-Type: text/x-diff; name=Make-the-number-of-failure-points-in-regexp-searches.patch; charset=us-ascii Content-Transfer-Encoding: base64 Content-ID: Content-Disposition: attachment; filename=Make-the-number-of-failure-points-in-regexp-searches.patch RnJvbSAwYTU4OTY5NjcwNjM3Y2I0ZjA2NWFlNjE5NTMxZjc4YTExZWE5YmRi IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQ0KRnJvbTogR3JlZ29yeSBIZXl0 aW5ncyA8Z3JlZ29yeUBoZXl0aW5ncy5vcmc+DQpEYXRlOiBNb24sIDIwIEZl YiAyMDIzIDAxOjQ3OjI4ICswMDAwDQpTdWJqZWN0OiBbUEFUQ0hdIE1ha2Ug dGhlIG51bWJlciBvZiBmYWlsdXJlIHBvaW50cyBpbiByZWdleHAgc2VhcmNo ZXMNCiBtb2RpZmlhYmxlDQoNCiogc3JjL3NlYXJjaC5jIChzeW1zX29mX3Nl YXJjaCkgPHJlZ2V4cC1tYXgtZmFpbHVyZXM+OiBOZXcNCnZhcmlhYmxlLCBy ZXBsYWNpbmcgdGhlIGNvbnN0YW50IHZhcmlhYmxlICdlbWFjc19yZV9tYXhf ZmFpbHVyZXMnLg0KSW5pdGlhbGl6ZSBpdCB3aXRoIHRoZSBjb25zdGFudCAn bWF4X3JlZ2V4cF9tYXhfZmFpbHVyZScuDQoNCiogc3JjL3JlZ2V4LWVtYWNz Lmg6IFJlcGxhY2UgdGhlIGV4dGVybmFsIGRlZmluaXRpb24gb2YNCidlbWFj c19yZV9tYXhfZmFpbHVyZXMnIHdpdGggdGhlIGNvbnN0YW50DQonbWF4X3Jl Z2V4cF9tYXhfZmFpbHVyZScuDQoNCiogc3JjL3JlZ2V4LWVtYWNzLmMgKEdS T1dfRkFJTF9TVEFDSyk6IFVzZSB0aGUgbmV3IHZhcmlhYmxlDQppbnN0ZWFk IG9mIHRoZSBjb25zdGFudC4gIFJlc2V0IGl0IHRvIGl0cyBtYXhpbXVtIHZh bHVlIGlmDQpuZWNlc3NhcnkuDQoNCiogc3JjL2VtYWNzLmMgKG1haW4pOiBV c2UgdGhlIG5ldyBjb25zdGFudA0KJ21heF9yZWdleHBfbWF4X2ZhaWx1cmUn Lg0KDQoqIGxpc3AvbnhtbC94bWx0b2suZWwgKHhtbHRvay1zY2FuLWF0dHJp YnV0ZXMpOiBCaW5kDQoncmVnZXhwLW1heC1mYWlsdXJlcycgdG8gYSBzbWFs bCB2YWx1ZS4gIEZpeGVzIGJ1ZyM2MTUxNC4NCi0tLQ0KIGxpc3AvbnhtbC94 bWx0b2suZWwgfCAgMyArKy0NCiBzcmMvZW1hY3MuYyAgICAgICAgIHwgIDQg KystLQ0KIHNyYy9yZWdleC1lbWFjcy5jICAgfCAyMyArKysrKysrKy0tLS0t LS0tLS0tLS0tLQ0KIHNyYy9yZWdleC1lbWFjcy5oICAgfCAgNCArKy0tDQog c3JjL3NlYXJjaC5jICAgICAgICB8ICA0ICsrKysNCiA1IGZpbGVzIGNoYW5n ZWQsIDE4IGluc2VydGlvbnMoKyksIDIwIGRlbGV0aW9ucygtKQ0KDQpkaWZm IC0tZ2l0IGEvbGlzcC9ueG1sL3htbHRvay5lbCBiL2xpc3AvbnhtbC94bWx0 b2suZWwNCmluZGV4IGMzNmQyMjVjN2M5Li4zMmQ2ZGZkMzljMSAxMDA2NDQN Ci0tLSBhL2xpc3AvbnhtbC94bWx0b2suZWwNCisrKyBiL2xpc3AvbnhtbC94 bWx0b2suZWwNCkBAIC03MzEsNyArNzMxLDggQEAgeG1sdG9rLXNjYW4tYWZ0 ZXItY29tbWVudC1vcGVuDQogDQogKGRlZnVuIHhtbHRvay1zY2FuLWF0dHJp YnV0ZXMgKCkNCiAgIChsZXQgKChyZWNvdmVyaW5nIG5pbCkNCi0JKGF0dHMt bmVlZGluZy1ub3JtYWxpemF0aW9uIG5pbCkpDQorCShhdHRzLW5lZWRpbmct bm9ybWFsaXphdGlvbiBuaWwpDQorCShyZWdleHAtbWF4LWZhaWx1cmVzIDEw MDApKQ0KICAgICAod2hpbGUgKGNvbmQgKChvciAobG9va2luZy1hdCAoeG1s dG9rLWF0dHJpYnV0ZSByZWdleHApKQ0KIAkJICAgICAgOzsgdXNlIG5vbi1n cmVlZHkgZ3JvdXANCiAJCSAgICAgICh3aGVuIChsb29raW5nLWF0IChjb25j YXQgIltePD5cbl0rPyINCmRpZmYgLS1naXQgYS9zcmMvZW1hY3MuYyBiL3Ny Yy9lbWFjcy5jDQppbmRleCAyMTRlMmUyYTI5Ni4uZWI5NzhjOWRlMjMgMTAw NjQ0DQotLS0gYS9zcmMvZW1hY3MuYw0KKysrIGIvc3JjL2VtYWNzLmMNCkBA IC0xNDk5LDcgKzE0OTksNyBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqKmFy Z3YpDQogICAgICAgcmxpbV90IGxpbSA9IHJsaW0ucmxpbV9jdXI7DQogDQog ICAgICAgLyogQXBwcm94aW1hdGUgdGhlIGFtb3VudCByZWdleC1lbWFjcy5j IG5lZWRzIHBlciB1bml0IG9mDQotCSBlbWFjc19yZV9tYXhfZmFpbHVyZXMs IHRoZW4gYWRkIDMzJSB0byBjb3ZlciB0aGUgc2l6ZSBvZiB0aGUNCisJIG1h eF9yZWdleHBfbWF4X2ZhaWx1cmVzLCB0aGVuIGFkZCAzMyUgdG8gY292ZXIg dGhlIHNpemUgb2YgdGhlDQogCSBzbWFsbGVyIHN0YWNrcyB0aGF0IHJlZ2V4 LWVtYWNzLmMgc3VjY2Vzc2l2ZWx5IGFsbG9jYXRlcyBhbmQNCiAJIGRpc2Nh cmRzIG9uIGl0cyB3YXkgdG8gdGhlIG1heGltdW0uICAqLw0KICAgICAgIGlu dCBtaW5fcmF0aW8gPSAyMCAqIHNpemVvZiAoY2hhciAqKTsNCkBAIC0xNTE0 LDcgKzE1MTQsNyBAQCBtYWluIChpbnQgYXJnYywgY2hhciAqKmFyZ3YpDQog DQogICAgICAgaWYgKHRyeV90b19ncm93X3N0YWNrKQ0KIAl7DQotCSAgcmxp bV90IG5ld2xpbSA9IGVtYWNzX3JlX21heF9mYWlsdXJlcyAqIHJhdGlvICsg ZXh0cmE7DQorCSAgcmxpbV90IG5ld2xpbSA9IG1heF9yZWdleHBfbWF4X2Zh aWx1cmVzICogcmF0aW8gKyBleHRyYTsNCiANCiAJICAvKiBSb3VuZCB0aGUg bmV3IGxpbWl0IHRvIGEgcGFnZSBib3VuZGFyeTsgdGhpcyBpcyBuZWVkZWQN CiAJICAgICBmb3IgRGFyd2luIGtlcm5lbCAxNS40LjAgKHNlZSBCdWcjMjM2 MjIpIGFuZCBwZXJoYXBzDQpkaWZmIC0tZ2l0IGEvc3JjL3JlZ2V4LWVtYWNz LmMgYi9zcmMvcmVnZXgtZW1hY3MuYw0KaW5kZXggMmRjYTBkMTZhZDkuLjg3 ZDRkNWNkNDM0IDEwMDY0NA0KLS0tIGEvc3JjL3JlZ2V4LWVtYWNzLmMNCisr KyBiL3NyYy9yZWdleC1lbWFjcy5jDQpAQCAtODY4LDE3ICs4NjgsNiBAQCBw cmludF9kb3VibGVfc3RyaW5nIChyZV9jaGFyICp3aGVyZSwgcmVfY2hhciAq c3RyaW5nMSwgcHRyZGlmZl90IHNpemUxLA0KICAgIHNwYWNlLCBzbyBpdCBp cyBub3QgYSBoYXJkIGxpbWl0LiAgKi8NCiAjZGVmaW5lIElOSVRfRkFJTFVS RV9BTExPQyAyMA0KIA0KLS8qIFJvdWdobHkgdGhlIG1heGltdW0gbnVtYmVy IG9mIGZhaWx1cmUgcG9pbnRzIG9uIHRoZSBzdGFjay4gIFdvdWxkIGJlDQot ICAgZXhhY3RseSB0aGF0IGlmIGZhaWx1cmUgYWx3YXlzIHVzZWQgVFlQSUNB TF9GQUlMVVJFX1NJWkUgaXRlbXMuDQotICAgVGhpcyBpcyBhIHZhcmlhYmxl IG9ubHkgc28gdXNlcnMgb2YgcmVnZXggY2FuIGFzc2lnbiB0byBpdDsgd2Ug bmV2ZXINCi0gICBjaGFuZ2UgaXQgb3Vyc2VsdmVzLiAgV2UgYWx3YXlzIG11 bHRpcGx5IGl0IGJ5IFRZUElDQUxfRkFJTFVSRV9TSVpFDQotICAgYmVmb3Jl IHVzaW5nIGl0LCBzbyBpdCBzaG91bGQgcHJvYmFibHkgYmUgYSBieXRlLWNv dW50IGluc3RlYWQuICAqLw0KLS8qIE5vdGUgdGhhdCA0NDAwIHdhcyBlbm91 Z2ggdG8gY2F1c2UgYSBjcmFzaCBvbiBBbHBoYSBPU0YvMSwNCi0gICB3aG9z ZSBkZWZhdWx0IHN0YWNrIGxpbWl0IGlzIDJtYi4gIEluIG9yZGVyIGZvciBh IGxhcmdlcg0KLSAgIHZhbHVlIHRvIHdvcmsgcmVsaWFibHksIHlvdSBoYXZl IHRvIHRyeSB0byBtYWtlIGl0IGFjY29yZA0KLSAgIHdpdGggdGhlIHByb2Nl c3Mgc3RhY2sgbGltaXQuICAqLw0KLXB0cmRpZmZfdCBlbWFjc19yZV9tYXhf ZmFpbHVyZXMgPSA0MDAwMDsNCi0NCiB1bmlvbiBmYWlsX3N0YWNrX2VsdA0K IHsNCiAgIHJlX2NoYXIgKnBvaW50ZXI7DQpAQCAtOTEyLDcgKzkwMSw3IEBA ICNkZWZpbmUgSU5JVF9GQUlMX1NUQUNLKCkJCQkJCQlcDQogDQogDQogLyog RG91YmxlIHRoZSBzaXplIG9mIEZBSUxfU1RBQ0ssIHVwIHRvIGEgbGltaXQN Ci0gICB3aGljaCBhbGxvd3MgYXBwcm94aW1hdGVseSAnZW1hY3NfcmVfbWF4 X2ZhaWx1cmVzJyBpdGVtcy4NCisgICB3aGljaCBhbGxvd3MgYXBwcm94aW1h dGVseSAnVnJlZ2V4cF9tYXhfZmFpbHVyZXMnIGl0ZW1zLg0KIA0KICAgIFJl dHVybiAxIGlmIHN1Y2NlZWRzLCBhbmQgMCBpZiBlaXRoZXIgcmFuIG91dCBv ZiBtZW1vcnkNCiAgICBhbGxvY2F0aW5nIHNwYWNlIGZvciBpdCBvciBpdCB3 YXMgYWxyZWFkeSB0b28gbGFyZ2UuDQpAQCAtOTI2LDE2ICs5MTUsMjAgQEAg I2RlZmluZSBJTklUX0ZBSUxfU1RBQ0soKQkJCQkJCVwNCiAjZGVmaW5lIEZB SUxfU1RBQ0tfR1JPV1RIX0ZBQ1RPUiA0DQogDQogI2RlZmluZSBHUk9XX0ZB SUxfU1RBQ0soZmFpbF9zdGFjaykJCQkJCVwNCi0gICgoKGZhaWxfc3RhY2sp LnNpemUgPj0gZW1hY3NfcmVfbWF4X2ZhaWx1cmVzICogVFlQSUNBTF9GQUlM VVJFX1NJWkUpICAgICAgICBcDQorICAoKFZyZWdleHBfbWF4X2ZhaWx1cmVz ID0JCQkJCQlcDQorICAgIFZyZWdleHBfbWF4X2ZhaWx1cmVzIDwgMAkJCQkJ CVwNCisgICAgfHwgVnJlZ2V4cF9tYXhfZmFpbHVyZXMgPiBtYXhfcmVnZXhw X21heF9mYWlsdXJlcyA/CQkJXA0KKyAgICBtYXhfcmVnZXhwX21heF9mYWls dXJlcyA6IFZyZWdleHBfbWF4X2ZhaWx1cmVzKSwJCQlcDQorICAgKChmYWls X3N0YWNrKS5zaXplID49IFZyZWdleHBfbWF4X2ZhaWx1cmVzICogVFlQSUNB TF9GQUlMVVJFX1NJWkUpICAgXA0KICAgID8gMAkJCQkJCQkJCVwNCiAgICA6 ICgoZmFpbF9zdGFjaykuc3RhY2sJCQkJCQlcDQogICAgICAgPSBSRUdFWF9S RUFMTE9DQVRFICgoZmFpbF9zdGFjaykuc3RhY2ssCQkJCVwNCiAJICAoZmFp bF9zdGFjaykuYXZhaWwgKiBzaXplb2YgKGZhaWxfc3RhY2tfZWx0X3QpLAkJ XA0KLSAgICAgICAgICBtaW4gKGVtYWNzX3JlX21heF9mYWlsdXJlcyAqIFRZ UElDQUxfRkFJTFVSRV9TSVpFLCAgICAgICAgICAgICAgICAgIFwNCisgICAg ICAgICAgbWluIChWcmVnZXhwX21heF9mYWlsdXJlcyAqIFRZUElDQUxfRkFJ TFVSRV9TSVpFLCAgICAgICAgICAgICBcDQogICAgICAgICAgICAgICAgKChm YWlsX3N0YWNrKS5zaXplICogRkFJTF9TVEFDS19HUk9XVEhfRkFDVE9SKSkg ICAgICAgICAgXA0KICAgICAgICAgICAqIHNpemVvZiAoZmFpbF9zdGFja19l bHRfdCkpLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCiAg ICAgICAoKGZhaWxfc3RhY2spLnNpemUJCQkJCQlcDQotICAgICAgID0gKG1p biAoZW1hY3NfcmVfbWF4X2ZhaWx1cmVzICogVFlQSUNBTF9GQUlMVVJFX1NJ WkUsCQlcDQorICAgICAgID0gKG1pbiAoVnJlZ2V4cF9tYXhfZmFpbHVyZXMg KiBUWVBJQ0FMX0ZBSUxVUkVfU0laRSwJCVwNCiAJICAgICAgICgoZmFpbF9z dGFjaykuc2l6ZSAqIEZBSUxfU1RBQ0tfR1JPV1RIX0ZBQ1RPUikpKSksCVwN CiAgICAgICAxKSkNCiANCmRpZmYgLS1naXQgYS9zcmMvcmVnZXgtZW1hY3Mu aCBiL3NyYy9yZWdleC1lbWFjcy5oDQppbmRleCAxYmM5NzMzNjNlOS4uMTZi ZDdkYTA5NGIgMTAwNjQ0DQotLS0gYS9zcmMvcmVnZXgtZW1hY3MuaA0KKysr IGIvc3JjL3JlZ2V4LWVtYWNzLmgNCkBAIC00OSw4ICs0OSw4IEBAICNkZWZp bmUgRU1BQ1NfUkVHRVhfSCAxDQogICAgVE9ETzogdHVybiBpbnRvIGFuIGFj dHVhbCBmdW5jdGlvbiBwYXJhbWV0ZXIuICAqLw0KIGV4dGVybiBMaXNwX09i amVjdCByZV9tYXRjaF9vYmplY3Q7DQogDQotLyogUm91Z2hseSB0aGUgbWF4 aW11bSBudW1iZXIgb2YgZmFpbHVyZSBwb2ludHMgb24gdGhlIHN0YWNrLiAg Ki8NCi1leHRlcm4gcHRyZGlmZl90IGVtYWNzX3JlX21heF9mYWlsdXJlczsN CisvKiBNYXhpbXVtIHZhbHVlIGZvciBWcmVnZXhwX21heF9mYWlsdXJlcy4g ICovDQorI2RlZmluZSBtYXhfcmVnZXhwX21heF9mYWlsdXJlcyA0MDAwMA0K IA0KIC8qIEFtb3VudCBvZiBtZW1vcnkgdGhhdCB3ZSBjYW4gc2FmZWx5IHN0 YWNrIGFsbG9jYXRlLiAgKi8NCiBleHRlcm4gcHRyZGlmZl90IGVtYWNzX3Jl X3NhZmVfYWxsb2NhOw0KZGlmZiAtLWdpdCBhL3NyYy9zZWFyY2guYyBiL3Ny Yy9zZWFyY2guYw0KaW5kZXggMGJiNTJjMDNlZWYuLmUzMzYwZWIzYTg2IDEw MDY0NA0KLS0tIGEvc3JjL3NlYXJjaC5jDQorKysgYi9zcmMvc2VhcmNoLmMN CkBAIC0zNDMxLDYgKzM0MzEsMTAgQEAgc3ltc19vZl9zZWFyY2ggKHZvaWQp DQogaXMgdG8gYmluZCBpdCB3aXRoIGBsZXQnIGFyb3VuZCBhIHNtYWxsIGV4 cHJlc3Npb24uICAqLyk7DQogICBWaW5oaWJpdF9jaGFuZ2luZ19tYXRjaF9k YXRhID0gUW5pbDsNCiANCisgIERFRlZBUl9JTlQgKCJyZWdleHAtbWF4LWZh aWx1cmVzIiwgVnJlZ2V4cF9tYXhfZmFpbHVyZXMsDQorCSAgICAgIGRvYzog LyogTWF4aW11bSBudW1iZXIgb2YgZmFpbHVyZXMgcG9pbnRzIGluIGEgcmVn ZXhwIHNlYXJjaC4gICovKTsNCisgIFZyZWdleHBfbWF4X2ZhaWx1cmVzID0g bWF4X3JlZ2V4cF9tYXhfZmFpbHVyZXM7DQorDQogICBkZWZzdWJyICgmU2xv b2tpbmdfYXQpOw0KICAgZGVmc3ViciAoJlNwb3NpeF9sb29raW5nX2F0KTsN CiAgIGRlZnN1YnIgKCZTc3RyaW5nX21hdGNoKTsNCi0tIA0KMi4zOS4wDQoN Cg== --TAu4gfOE4u--