From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Pip Cet Newsgroups: gmane.emacs.devel Subject: Re: MPS: Crash while completing symbol with corfu Date: Tue, 02 Jul 2024 14:19:44 +0000 Message-ID: References: <87y16lbh10.fsf@localhost> <86v81pduw3.fsf@gnu.org> <87sewt87ni.fsf@localhost> <4aK6qyh6gPCldT2u0rLYOuIk7a5Coo8yNf71tkkBOlUh0yk3nU8yjRAZygm9rIzK3kOcyq_IAatIKS2buH7tgA2PwHIOgLTiqQRSoypoOfY=@protonmail.com> <871q4cja54.fsf@localhost> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="b1_sCWsRgaoZD6HQhcB1OLWEVTTgS0w4M65hA9oqDc" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="12860"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Eli Zaretskii , =?utf-8?Q?Gerd_M=C3=B6llmann?= , emacs-devel@gnu.org, eller.helmut@gmail.com To: Ihor Radchenko Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Tue Jul 02 16:43:14 2024 Return-path: Envelope-to: ged-emacs-devel@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 1sOeiv-00037P-RL for ged-emacs-devel@m.gmane-mx.org; Tue, 02 Jul 2024 16:43:14 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sOehu-0004FI-QP; Tue, 02 Jul 2024 10:42:10 -0400 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 1sOeMO-0002ij-As for emacs-devel@gnu.org; Tue, 02 Jul 2024 10:19:56 -0400 Original-Received: from mail-40131.protonmail.ch ([185.70.40.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sOeMK-0007Ta-Cs for emacs-devel@gnu.org; Tue, 02 Jul 2024 10:19:55 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail3; t=1719929989; x=1720189189; bh=owlrng9FADxi5o5sDBOsoQI7ihDhOrLfjUwgKdpCOAg=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID:BIMI-Selector; b=NFTfUWl0rp6S+6i/Kf53+j7MZX8ccLPW9Jx7uaxRm6A+CLGCQ7fYXqQJaZbDDSBap S1cUUW/6gbDjLYJ4Aqry6CQHGNjRem9YJfOHT9reREAYSJgS2YCOvS1cCgxN5vY51T ogjL4uJ/RWTTOrewN3Ai2Jt/ASWEHNQvMwSa/eDnBDXmR2Xph0sHaRUbnLFJ+rR50J XgFQWpWHKvkeqKymMS370N70CAkXPTIiSuOUF/L8j8vqrTreplEhAmX0bRxfS655Yb IG7MWGfSKZJ5K2lrRMKia9ulwmuLWzP67KxAonH9cCpOqpeWUtmIxSK0vSLVobBIXq 0yaRawnQKX5hQ== In-Reply-To: <871q4cja54.fsf@localhost> Feedback-ID: 112775352:user:proton X-Pm-Message-ID: 4a48aef957d3ef0068bdc2bc9cf0e60d06f5e4dc Received-SPF: pass client-ip=185.70.40.131; envelope-from=pipcet@protonmail.com; helo=mail-40131.protonmail.ch X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Tue, 02 Jul 2024 10:42:06 -0400 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:321166 Archived-At: This is a multi-part message in MIME format. --b1_sCWsRgaoZD6HQhcB1OLWEVTTgS0w4M65hA9oqDc Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On Tuesday, July 2nd, 2024 at 11:38, Ihor Radchenko w= rote: > Pip Cet pipcet@protonmail.com writes: >=20 > > > I confirm that it was an input with tooltip displayed (that's what co= rfu does). > >=20 > > Ihor, is this one reproducible? If it is, could you try with this patch= installed? >=20 >=20 > This crashes on startup: Oops, turns out you shouldn't double free just to be sure. Can you try the attached patch? I was able to trigger your bug by running ./emacs -Q --eval "(while t (menu-bar-mode 'toggle) (sit-for 0.1))" The change is in menu_destroy_callback, which passed through the wrong poin= ter. Thanks! Pip --b1_sCWsRgaoZD6HQhcB1OLWEVTTgS0w4M65hA9oqDc Content-Type: text/x-patch; name=0002-try-to-fix-GTK-related-crashes.patch Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=0002-try-to-fix-GTK-related-crashes.patch RnJvbSAzZTM0ZDdiMjZlMmQxZDM2MDI1MDk0Y2RiYzJkMTlhMzQzNWI5YWUxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQaXAgQ2V0IDxwaXBjZXRAcHJvdG9ubWFpbC5jb20+CkRhdGU6 IFR1ZSwgMiBKdWwgMjAyNCAwMDoxODo0MyArMDAwMApTdWJqZWN0OiBbUEFUQ0hdIFRyeSB0byBm aXggR1RLLXJlbGF0ZWQgY3Jhc2hlcy4KCi0tLQogc3JjL2d0a3V0aWwuYyB8IDExNSArKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLQogc3JjL3htZW51LmMg ICB8ICAgNCArLQogMiBmaWxlcyBjaGFuZ2VkLCA4MyBpbnNlcnRpb25zKCspLCAzNiBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9zcmMvZ3RrdXRpbC5jIGIvc3JjL2d0a3V0aWwuYwppbmRleCBl MGJhZTZiZjFhZS4uMjVkYzI3ZDVhZWMgMTAwNjQ0Ci0tLSBhL3NyYy9ndGt1dGlsLmMKKysrIGIv c3JjL2d0a3V0aWwuYwpAQCAtMTQ5LDYgKzE0OSwxNyBAQCAjZGVmaW5lIFRCX0lORk9fS0VZICJ4 Z19mcmFtZV90Yl9pbmZvIgogCiAMCiAKKyNkZWZpbmUgZ2xpYl91c2VyX2RhdGEobykgKHsJCQkJ XAorICAgICAgZ3BvaW50ZXIgcCA9IGlnY194emFsbG9jX2FtYmlnIChzaXplb2YgKG8pKTsJXAor ICAgICAgbWVtY3B5IChwLCAmKG8pLCBzaXplb2YgKG8pKTsJCQlcCisgICAgICBwOwkJCQkJCVwK KyAgICB9KQorCitzdGF0aWMgdm9pZCBnbGliX2ZyZWVfdXNlcl9kYXRhIChncG9pbnRlciBkYXRh LCBHQ2xvc3VyZSAqY2xvc3VyZSkKK3sKKyAgaWdjX3hmcmVlIChkYXRhKTsKK30KKwogI2lmZGVm IEhBVkVfR1RLMwogc3RhdGljIHZvaWQKIGVtYWNzX21lbnVfYmFyX2luaXQgKEVtYWNzTWVudUJh ciAqbWVudV9iYXIpCkBAIC04MjgsNyArODM5LDcgQEAgaGllcmFyY2h5X2NoX2NiIChHdGtXaWRn ZXQgKndpZGdldCwKICAgICAgICAgICAgICAgICAgR3RrV2lkZ2V0ICpwcmV2aW91c190b3BsZXZl bCwKICAgICAgICAgICAgICAgICAgZ3BvaW50ZXIgICB1c2VyX2RhdGEpCiB7Ci0gIHN0cnVjdCBm cmFtZSAqZiA9IHVzZXJfZGF0YTsKKyAgc3RydWN0IGZyYW1lICpmID0gKihzdHJ1Y3QgZnJhbWUg KiopdXNlcl9kYXRhOwogICB4cF9vdXRwdXQgKnggPSBmLT5vdXRwdXRfZGF0YS54cDsKICAgR3Rr V2lkZ2V0ICp0b3AgPSBndGtfd2lkZ2V0X2dldF90b3BsZXZlbCAoeC0+dHRpcF9sYmwpOwogCkBA IC04NTAsNyArODYxLDcgQEAgcXR0aXBfY2IgKEd0a1dpZGdldCAgKndpZGdldCwKICAgICAgICAg ICBHdGtUb29sdGlwICp0b29sdGlwLAogICAgICAgICAgIGdwb2ludGVyICAgIHVzZXJfZGF0YSkK IHsKLSAgc3RydWN0IGZyYW1lICpmID0gdXNlcl9kYXRhOworICBzdHJ1Y3QgZnJhbWUgKmYgPSAq KHN0cnVjdCBmcmFtZSAqKil1c2VyX2RhdGE7CiAgIHhwX291dHB1dCAqeCA9IGYtPm91dHB1dF9k YXRhLnhwOwogICBpZiAoeC0+dHRpcF93aWRnZXQgPT0gTlVMTCkKICAgICB7CkBAIC04ODIsOCAr ODkzLDExIEBAIHF0dGlwX2NiIChHdGtXaWRnZXQgICp3aWRnZXQsCiAgICAgICBndGtfd2lkZ2V0 X3JlYWxpemUgKEdUS19XSURHRVQgKHgtPnR0aXBfd2luZG93KSk7CiAgICAgICBndGtfd2lkZ2V0 X3JlYWxpemUgKHgtPnR0aXBfbGJsKTsKIAotICAgICAgZ19zaWduYWxfY29ubmVjdCAoeC0+dHRp cF9sYmwsICJoaWVyYXJjaHktY2hhbmdlZCIsCi0gICAgICAgICAgICAgICAgICAgICAgICBHX0NB TExCQUNLIChoaWVyYXJjaHlfY2hfY2IpLCBmKTsKKyAgICAgIGdfc2lnbmFsX2Nvbm5lY3RfZGF0 YSAoeC0+dHRpcF9sYmwsICJoaWVyYXJjaHktY2hhbmdlZCIsCisJCQkgICAgIEdfQ0FMTEJBQ0sg KGhpZXJhcmNoeV9jaF9jYiksCisJCQkgICAgIGdsaWJfdXNlcl9kYXRhIChmKSwKKwkJCSAgICAg Z2xpYl9mcmVlX3VzZXJfZGF0YSwKKwkJCSAgICAgR19DT05ORUNUX0RFRkFVTFQpOwogICAgIH0K IAogICByZXR1cm4gRkFMU0U7CkBAIC0xNTU2LDggKzE1NzAsMTEgQEAgeGdfY3JlYXRlX2ZyYW1l X3dpZGdldHMgKHN0cnVjdCBmcmFtZSAqZikKIAogICBndGtfd2lkZ2V0X3NldF9hcHBfcGFpbnRh YmxlICh3dG9wLCBmLT5hbHBoYV9iYWNrZ3JvdW5kICE9IDEuMCk7CiAjaWYgR1RLX0NIRUNLX1ZF UlNJT04gKDMsIDEwLCAwKQotICBnX3NpZ25hbF9jb25uZWN0IChHX09CSkVDVCAod3RvcCksICJz dHlsZS11cGRhdGVkIiwKLQkJICAgIEdfQ0FMTEJBQ0sgKHhnX3dpZGdldF9zdHlsZV91cGRhdGVk KSwgZik7CisgIGdfc2lnbmFsX2Nvbm5lY3RfZGF0YSAoR19PQkpFQ1QgKHd0b3ApLCAic3R5bGUt dXBkYXRlZCIsCisJCQkgR19DQUxMQkFDSyAoeGdfd2lkZ2V0X3N0eWxlX3VwZGF0ZWQpLAorCQkJ IGdsaWJfdXNlcl9kYXRhIChmKSwKKwkJCSBnbGliX2ZyZWVfdXNlcl9kYXRhLAorCQkJIEdfQ09O TkVDVF9ERUZBVUxUKTsKICNlbmRpZgogCiAgIC8qIGd0a193aW5kb3dfc2V0X2hhc19yZXNpemVf Z3JpcCBpcyBhIEd0aysgMy4wIGZ1bmN0aW9uIGJ1dCBVYnVudHUKQEAgLTE2NDYsOCArMTY2Mywx MSBAQCB4Z19jcmVhdGVfZnJhbWVfd2lkZ2V0cyAoc3RydWN0IGZyYW1lICpmKQogI2lmbmRlZiBI QVZFX1BHVEsKICAgLyogQWRkIGNhbGxiYWNrIHRvIGRvIG5vdGhpbmcgb24gV01fREVMRVRFX1dJ TkRPVy4gIFRoZSBkZWZhdWx0IGluCiAgICAgIEdUSyBpcyB0byBkZXN0cm95IHRoZSB3aWRnZXQu ICBXZSB3YW50IEVtYWNzIHRvIGRvIHRoYXQgaW5zdGVhZC4gICovCi0gIGdfc2lnbmFsX2Nvbm5l Y3QgKEdfT0JKRUNUICh3dG9wKSwgImRlbGV0ZS1ldmVudCIsCi0gICAgICAgICAgICAgICAgICAg IEdfQ0FMTEJBQ0sgKGRlbGV0ZV9jYiksIGYpOworICBnX3NpZ25hbF9jb25uZWN0X2RhdGEgKEdf T0JKRUNUICh3dG9wKSwgImRlbGV0ZS1ldmVudCIsCisJCQkgR19DQUxMQkFDSyAoZGVsZXRlX2Ni KSwKKwkJCSBnbGliX3VzZXJfZGF0YSAoZiksCisJCQkgZ2xpYl9mcmVlX3VzZXJfZGF0YSwKKwkJ CSBHX0NPTk5FQ1RfREVGQVVMVCk7CiAjZW5kaWYKIAogICAvKiBDb252ZXJ0IG91ciBnZW9tZXRy eSBwYXJhbWV0ZXJzIGludG8gYSBnZW9tZXRyeSBzdHJpbmcKQEAgLTE3MzUsMTQgKzE3NTUsMTgg QEAgeGdfY3JlYXRlX2ZyYW1lX3dpZGdldHMgKHN0cnVjdCBmcmFtZSAqZikKICAgZi0+b3V0cHV0 X2RhdGEueHAtPnR0aXBfd2luZG93ID0gMDsKICNpZm5kZWYgSEFWRV9QR1RLCiAgIGd0a193aWRn ZXRfc2V0X3Rvb2x0aXBfdGV4dCAod3RvcCwgIkR1bW15IHRleHQiKTsKLSAgZ19zaWduYWxfY29u bmVjdCAod3RvcCwgInF1ZXJ5LXRvb2x0aXAiLCBHX0NBTExCQUNLIChxdHRpcF9jYiksIGYpOwor ICBnX3NpZ25hbF9jb25uZWN0X2RhdGEgKHd0b3AsICJxdWVyeS10b29sdGlwIiwgR19DQUxMQkFD SyAocXR0aXBfY2IpLAorCQkJIGdsaWJfdXNlcl9kYXRhIChmKSwgZ2xpYl9mcmVlX3VzZXJfZGF0 YSwKKwkJCSBHX0NPTk5FQ1RfREVGQVVMVCk7CiAKICAgaW1jID0gZ3RrX2ltX211bHRpY29udGV4 dF9uZXcgKCk7CiAgIGdfb2JqZWN0X3JlZiAoaW1jKTsKICAgZ3RrX2ltX2NvbnRleHRfc2V0X3Vz ZV9wcmVlZGl0IChpbWMsIFRSVUUpOwogCi0gIGdfc2lnbmFsX2Nvbm5lY3QgKEdfT0JKRUNUIChp bWMpLCAiY29tbWl0IiwKLQkJICAgIEdfQ0FMTEJBQ0sgKHhnX2ltX2NvbnRleHRfY29tbWl0KSwg Zik7CisgIGdfc2lnbmFsX2Nvbm5lY3RfZGF0YSAoR19PQkpFQ1QgKGltYyksICJjb21taXQiLAor CQkgICAgR19DQUxMQkFDSyAoeGdfaW1fY29udGV4dF9jb21taXQpLAorCQkgICAgZ2xpYl91c2Vy X2RhdGEgKGYpLCBnbGliX2ZyZWVfdXNlcl9kYXRhLAorCQkgICAgR19DT05ORUNUX0RFRkFVTFQp OwogICBnX3NpZ25hbF9jb25uZWN0IChHX09CSkVDVCAoaW1jKSwgInByZWVkaXQtY2hhbmdlZCIs CiAJCSAgICBHX0NBTExCQUNLICh4Z19pbV9jb250ZXh0X3ByZWVkaXRfY2hhbmdlZCksIE5VTEwp OwogICBnX3NpZ25hbF9jb25uZWN0IChHX09CSkVDVCAoaW1jKSwgInByZWVkaXQtZW5kIiwKQEAg LTE4NTMsNyArMTg3Nyw5IEBAIHhnX2NyZWF0ZV9mcmFtZV9vdXRlcl93aWRnZXRzIChzdHJ1Y3Qg ZnJhbWUgKmYpCiAgIGYtPm91dHB1dF9kYXRhLnhwLT50dGlwX3dpbmRvdyA9IDA7CiAjaWZuZGVm IEhBVkVfUEdUSwogICBndGtfd2lkZ2V0X3NldF90b29sdGlwX3RleHQgKHd0b3AsICJEdW1teSB0 ZXh0Iik7Ci0gIGdfc2lnbmFsX2Nvbm5lY3QgKHd0b3AsICJxdWVyeS10b29sdGlwIiwgR19DQUxM QkFDSyAocXR0aXBfY2IpLCBmKTsKKyAgZ19zaWduYWxfY29ubmVjdF9kYXRhICh3dG9wLCAicXVl cnktdG9vbHRpcCIsIEdfQ0FMTEJBQ0sgKHF0dGlwX2NiKSwKKwkJICAgIGdsaWJfdXNlcl9kYXRh IChmKSwgZ2xpYl9mcmVlX3VzZXJfZGF0YSwKKwkJICAgIEdfQ09OTkVDVF9ERUZBVUxUKTsKICNl bmRpZgogCiAgIHsKQEAgLTIzNzEsOCArMjM5NywxMSBAQCBjcmVhdGVfZGlhbG9nICh3aWRnZXRf dmFsdWUgKnd2LAogICAgICAgICAgIGlmICghIGl0ZW0tPmVuYWJsZWQpCiAgICAgICAgICAgICBn dGtfd2lkZ2V0X3NldF9zZW5zaXRpdmUgKHcsIEZBTFNFKTsKICAgICAgICAgICBpZiAoc2VsZWN0 X2NiKQotICAgICAgICAgICAgZ19zaWduYWxfY29ubmVjdCAoR19PQkpFQ1QgKHcpLCAiY2xpY2tl ZCIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RfY2IsIGl0ZW0tPmNhbGxf ZGF0YSk7CisgICAgICAgICAgICBnX3NpZ25hbF9jb25uZWN0X2RhdGEgKEdfT0JKRUNUICh3KSwg ImNsaWNrZWQiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0X2NiLAorCQkJ ICAgICAgZ2xpYl91c2VyX2RhdGEgKGl0ZW0tPmNhbGxfZGF0YSksCisJCQkgICAgICBnbGliX2Zy ZWVfdXNlcl9kYXRhLAorCQkJICAgICAgR19DT05ORUNUX0RFRkFVTFQpOwogCiAgICAgICAgICAg Z3RrX2JveF9wYWNrX3N0YXJ0IChjdXJfYm94LCB3LCBUUlVFLCBUUlVFLCBidXR0b25fc3BhY2lu Zyk7CiAgICAgICAgICAgaWYgKCsrYnV0dG9uX25yID09IGxlZnRfYnV0dG9ucykKQEAgLTMwODIs OSArMzExMSw5IEBAIHhnX21hcmtfZGF0YSAodm9pZCkKIHN0YXRpYyB2b2lkCiBtZW51aXRlbV9k ZXN0cm95X2NhbGxiYWNrIChHdGtXaWRnZXQgKncsIGdwb2ludGVyIGNsaWVudF9kYXRhKQogewot ICBpZiAoY2xpZW50X2RhdGEpCisgIHhnX21lbnVfaXRlbV9jYl9kYXRhICpkYXRhID0gKih4Z19t ZW51X2l0ZW1fY2JfZGF0YSAqKiljbGllbnRfZGF0YTsKKyAgaWYgKGRhdGEpCiAgICAgewotICAg ICAgeGdfbWVudV9pdGVtX2NiX2RhdGEgKmRhdGEgPSBjbGllbnRfZGF0YTsKICAgICAgIHhnX2xp c3RfcmVtb3ZlICgmeGdfbWVudV9pdGVtX2NiX2xpc3QsICZkYXRhLT5wdHJzKTsKICAgICAgIHhm cmVlIChkYXRhKTsKICAgICB9CkBAIC0zMTI5LDcgKzMxNTgsNyBAQCBtZW51aXRlbV9oaWdobGln aHRfY2FsbGJhY2sgKEd0a1dpZGdldCAqdywKIHN0YXRpYyB2b2lkCiBtZW51X2Rlc3Ryb3lfY2Fs bGJhY2sgKEd0a1dpZGdldCAqdywgZ3BvaW50ZXIgY2xpZW50X2RhdGEpCiB7Ci0gIHVucmVmX2Ns X2RhdGEgKGNsaWVudF9kYXRhKTsKKyAgdW5yZWZfY2xfZGF0YSAoKih4Z19tZW51X2NiX2RhdGEg KiopY2xpZW50X2RhdGEpOwogfQogCiAvKiBNYWtlIGEgR1RLIHdpZGdldCB0aGF0IGNvbnRhaW5z IGJvdGggVVRGOF9MQUJFTCBhbmQgVVRGOF9LRVkgKGJvdGgKQEAgLTMyNzcsMTAgKzMzMDYsMTIg QEAgeGdfY3JlYXRlX29uZV9tZW51aXRlbSAod2lkZ2V0X3ZhbHVlICppdGVtLAogICBjYl9kYXRh LT5jbF9kYXRhID0gY2xfZGF0YTsKICAgY2JfZGF0YS0+Y2FsbF9kYXRhID0gaXRlbS0+Y2FsbF9k YXRhOwogCi0gIGdfc2lnbmFsX2Nvbm5lY3QgKEdfT0JKRUNUICh3KSwKKyAgZ19zaWduYWxfY29u bmVjdF9kYXRhIChHX09CSkVDVCAodyksCiAgICAgICAgICAgICAgICAgICAgICJkZXN0cm95IiwK ICAgICAgICAgICAgICAgICAgICAgR19DQUxMQkFDSyAobWVudWl0ZW1fZGVzdHJveV9jYWxsYmFj ayksCi0gICAgICAgICAgICAgICAgICAgIGNiX2RhdGEpOworCQkgICAgZ2xpYl91c2VyX2RhdGEg KGNiX2RhdGEpLAorCQkgICAgZ2xpYl9mcmVlX3VzZXJfZGF0YSwKKwkJICAgIEdfQ09OTkVDVF9E RUZBVUxUKTsKIAogICAvKiBQdXQgY2JfZGF0YSBpbiB3aWRnZXQsIHNvIHdlIGNhbiBnZXQgYXQg aXQgd2hlbiBtb2RpZnlpbmcgbWVudWJhciAgKi8KICAgZ19vYmplY3Rfc2V0X2RhdGEgKEdfT0JK RUNUICh3KSwgWEdfSVRFTV9EQVRBLCBjYl9kYXRhKTsKQEAgLTMyOTAsNyArMzMyMSwxMCBAQCB4 Z19jcmVhdGVfb25lX21lbnVpdGVtICh3aWRnZXRfdmFsdWUgKml0ZW0sCiAgICAgewogICAgICAg aWYgKHNlbGVjdF9jYikKICAgICAgICAgY2JfZGF0YS0+c2VsZWN0X2lkCi0gICAgICAgICAgPSBn X3NpZ25hbF9jb25uZWN0IChHX09CSkVDVCAodyksICJhY3RpdmF0ZSIsIHNlbGVjdF9jYiwgY2Jf ZGF0YSk7CisgICAgICAgICAgPSBnX3NpZ25hbF9jb25uZWN0X2RhdGEgKEdfT0JKRUNUICh3KSwg ImFjdGl2YXRlIiwgc2VsZWN0X2NiLAorCQkJICAgICAgZ2xpYl91c2VyX2RhdGEgKGNiX2RhdGEp LAorCQkJICAgICAgZ2xpYl9mcmVlX3VzZXJfZGF0YSwKKwkJCSAgICAgIEdfQ09OTkVDVF9ERUZB VUxUKTsKICAgICB9CiAKICAgcmV0dXJuIHc7CkBAIC0zMzc4LDggKzM0MTIsMTAgQEAgY3JlYXRl X21lbnVzICh3aWRnZXRfdmFsdWUgKmRhdGEsCiAjZW5kaWYKIAogI2lmZGVmIEhBVkVfUEdUSwot CSAgZ19zaWduYWxfY29ubmVjdCAoR19PQkpFQ1QgKHdtZW51KSwgImJ1dHRvbi1wcmVzcy1ldmVu dCIsCi0JCQkgICAgR19DQUxMQkFDSyAobWVudV9iYXJfYnV0dG9uX3ByZXNzZWRfY2IpLCBmKTsK KwkgIGdfc2lnbmFsX2Nvbm5lY3RfZGF0YSAoR19PQkpFQ1QgKHdtZW51KSwgImJ1dHRvbi1wcmVz cy1ldmVudCIsCisJCQkgICAgR19DQUxMQkFDSyAobWVudV9iYXJfYnV0dG9uX3ByZXNzZWRfY2Ip LAorCQkJICAgIGdsaWJfdXNlcl9kYXRhIChmKSwgZ2xpYl9mcmVlX3VzZXJfZGF0YSwKKwkJCSAg ICBHX0NPTk5FQ1RfREVGQVVMVCk7CiAjZW5kaWYKICAgICAgICAgICAvKiBTZXQgd2lkdGggb2Yg bWVudSBiYXIgdG8gYSBzbWFsbCB2YWx1ZSBzbyBpdCBkb2Vzbid0IGVubGFyZ2UKICAgICAgICAg ICAgICBhIHNtYWxsIGluaXRpYWwgZnJhbWUgc2l6ZS4gIFRoZSB3aWR0aCB3aWxsIGJlIHNldCB0 byB0aGUKQEAgLTMzOTEsOCArMzQyNywxMCBAQCBjcmVhdGVfbWVudXMgKHdpZGdldF92YWx1ZSAq ZGF0YSwKICAgICAgIC8qIFB1dCBjbF9kYXRhIG9uIHRoZSB0b3AgbWVudSBmb3IgZWFzaWVyIGFj Y2Vzcy4gICovCiAgICAgICBjbF9kYXRhID0gbWFrZV9jbF9kYXRhIChjbF9kYXRhLCBmLCBoaWdo bGlnaHRfY2IpOwogICAgICAgZ19vYmplY3Rfc2V0X2RhdGEgKEdfT0JKRUNUICh3bWVudSksIFhH X0ZSQU1FX0RBVEEsIChncG9pbnRlciljbF9kYXRhKTsKLSAgICAgIGdfc2lnbmFsX2Nvbm5lY3Qg KEdfT0JKRUNUICh3bWVudSksICJkZXN0cm95IiwKLSAgICAgICAgICAgICAgICAgICAgICAgIEdf Q0FMTEJBQ0sgKG1lbnVfZGVzdHJveV9jYWxsYmFjayksIGNsX2RhdGEpOworICAgICAgZ19zaWdu YWxfY29ubmVjdF9kYXRhIChHX09CSkVDVCAod21lbnUpLCAiZGVzdHJveSIsCisgICAgICAgICAg ICAgICAgICAgICAgICBHX0NBTExCQUNLIChtZW51X2Rlc3Ryb3lfY2FsbGJhY2spLAorCQkJZ2xp Yl91c2VyX2RhdGEgKGNsX2RhdGEpLCBnbGliX2ZyZWVfdXNlcl9kYXRhLAorCQkJR19DT05ORUNU X0RFRkFVTFQpOwogCiAgICAgICBpZiAobmFtZSkKICAgICAgICAgZ3RrX3dpZGdldF9zZXRfbmFt ZSAod21lbnUsIG5hbWUpOwpAQCAtMzg2NCw4ICszOTAyLDExIEBAIHhnX3VwZGF0ZV9tZW51X2l0 ZW0gKHdpZGdldF92YWx1ZSAqdmFsLAogICAgICAgICAgIC8qIFRoaXMgaXRlbSBzaGFsbCBoYXZl IGEgc2VsZWN0IGNhbGxiYWNrLiAgKi8KICAgICAgICAgICBpZiAoISBjYl9kYXRhLT5zZWxlY3Rf aWQpCiAgICAgICAgICAgICBjYl9kYXRhLT5zZWxlY3RfaWQKLSAgICAgICAgICAgICAgPSBnX3Np Z25hbF9jb25uZWN0IChHX09CSkVDVCAodyksICJhY3RpdmF0ZSIsCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgc2VsZWN0X2NiLCBjYl9kYXRhKTsKKyAgICAgICAgICAgICAgPSBn X3NpZ25hbF9jb25uZWN0X2RhdGEgKEdfT0JKRUNUICh3KSwgImFjdGl2YXRlIiwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxlY3RfY2IsCisJCQkJICBnbGliX3VzZXJfZGF0 YSAoY2JfZGF0YSksCisJCQkJICBnbGliX2ZyZWVfdXNlcl9kYXRhLAorCQkJCSAgR19DT05ORUNU X0RFRkFVTFQpOwogICAgICAgICB9CiAgICAgICBlbHNlIGlmIChjYl9kYXRhLT5zZWxlY3RfaWQp CiAgICAgICAgIHsKQEAgLTQxMTEsNyArNDE1Miw3IEBAIHhnX21vZGlmeV9tZW51YmFyX3dpZGdl dHMgKEd0a1dpZGdldCAqbWVudWJhciwgc3RydWN0IGZyYW1lICpmLAogbWVudWJhcl9tYXBfY2Ig KEd0a1dpZGdldCAqdywgZ3BvaW50ZXIgdXNlcl9kYXRhKQogewogICBHdGtSZXF1aXNpdGlvbiBy ZXE7Ci0gIHN0cnVjdCBmcmFtZSAqZiA9IHVzZXJfZGF0YTsKKyAgc3RydWN0IGZyYW1lICpmID0g KihzdHJ1Y3QgZnJhbWUgKiopdXNlcl9kYXRhOwogICBndGtfd2lkZ2V0X2dldF9wcmVmZXJyZWRf c2l6ZSAodywgTlVMTCwgJnJlcSk7CiAgIHJlcS5oZWlnaHQgKj0geGdfZ2V0X3NjYWxlIChmKTsK ICAgaWYgKEZSQU1FX01FTlVCQVJfSEVJR0hUIChmKSAhPSByZXEuaGVpZ2h0KQpAQCAtNDE0Myw3 ICs0MTg0LDkgQEAgeGdfdXBkYXRlX2ZyYW1lX21lbnViYXIgKHN0cnVjdCBmcmFtZSAqZikKICAg ICAgICAgICAgICAgICAgICAgICBGQUxTRSwgRkFMU0UsIDApOwogICBndGtfYm94X3Jlb3JkZXJf Y2hpbGQgKEdUS19CT1ggKHgtPnZib3hfd2lkZ2V0KSwgeC0+bWVudWJhcl93aWRnZXQsIDApOwog Ci0gIGdfc2lnbmFsX2Nvbm5lY3QgKHgtPm1lbnViYXJfd2lkZ2V0LCAibWFwIiwgR19DQUxMQkFD SyAobWVudWJhcl9tYXBfY2IpLCBmKTsKKyAgZ19zaWduYWxfY29ubmVjdF9kYXRhICh4LT5tZW51 YmFyX3dpZGdldCwgIm1hcCIsIEdfQ0FMTEJBQ0sgKG1lbnViYXJfbWFwX2NiKSwKKwkJICAgIGds aWJfdXNlcl9kYXRhIChmKSwgZ2xpYl9mcmVlX3VzZXJfZGF0YSwKKwkJICAgIEdfQ09OTkVDVF9E RUZBVUxUKTsKICAgZ3RrX3dpZGdldF9zaG93X2FsbCAoeC0+bWVudWJhcl93aWRnZXQpOwogICBn dGtfd2lkZ2V0X2dldF9wcmVmZXJyZWRfc2l6ZSAoeC0+bWVudWJhcl93aWRnZXQsIE5VTEwsICZy ZXEpOwogICByZXEuaGVpZ2h0ICo9IHNjYWxlOwpAQCAtNTI0Niw3ICs1Mjg5LDkgQEAgeGdfcHJp bnRfZnJhbWVzX2RpYWxvZyAoTGlzcF9PYmplY3QgZnJhbWVzKQogICBpZiAocGFnZV9zZXR1cCAh PSBOVUxMKQogICAgIGd0a19wcmludF9vcGVyYXRpb25fc2V0X2RlZmF1bHRfcGFnZV9zZXR1cCAo cHJpbnQsIHBhZ2Vfc2V0dXApOwogICBndGtfcHJpbnRfb3BlcmF0aW9uX3NldF9uX3BhZ2VzIChw cmludCwgbGlzdF9sZW5ndGggKGZyYW1lcykpOwotICBnX3NpZ25hbF9jb25uZWN0IChwcmludCwg ImRyYXctcGFnZSIsIEdfQ0FMTEJBQ0sgKGRyYXdfcGFnZSksICZmcmFtZXMpOworICBnX3NpZ25h bF9jb25uZWN0X2RhdGEgKHByaW50LCAiZHJhdy1wYWdlIiwgR19DQUxMQkFDSyAoZHJhd19wYWdl KSwKKwkJCSBnbGliX3VzZXJfZGF0YSAoZnJhbWVzKSwgZ2xpYl9mcmVlX3VzZXJfZGF0YSwKKwkJ CSBHX0NPTk5FQ1RfREVGQVVMVCk7CiAgIHJlcyA9IGd0a19wcmludF9vcGVyYXRpb25fcnVuIChw cmludCwgR1RLX1BSSU5UX09QRVJBVElPTl9BQ1RJT05fUFJJTlRfRElBTE9HLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgTlVMTCk7CiAgIGlmIChyZXMgPT0gR1RLX1BS SU5UX09QRVJBVElPTl9SRVNVTFRfQVBQTFkpCkBAIC01NDc4LDcgKzU1MjMsNyBAQCB0Yl9zaXpl X2NiIChHdGtXaWRnZXQgICAgKndpZGdldCwKICAgLyogV2hlbiB0b29sIGJhciBpcyBjcmVhdGVk IGl0IGhhcyBvbmUgcHJlZmVycmVkIHNpemUuICBCdXQgd2hlbiBzaXplIGlzCiAgICAgIGFsbG9j YXRlZCBiZXR3ZWVuIHdpZGdldHMsIGl0IG1heSBnZXQgYW5vdGhlci4gIFNvIHdlIG11c3QgdXBk YXRlCiAgICAgIHNpemUgaGludHMgaWYgdG9vbCBiYXIgc2l6ZSBjaGFuZ2VzLiAgU2VlbiBvbiBG ZWRvcmEgMTggYXQgbGVhc3QuICAqLwotICBzdHJ1Y3QgZnJhbWUgKmYgPSB1c2VyX2RhdGE7Cisg IHN0cnVjdCBmcmFtZSAqZiA9ICooc3RydWN0IGZyYW1lICoqKXVzZXJfZGF0YTsKIAogICBpZiAo eGdfdXBkYXRlX3Rvb2xfYmFyX3NpemVzIChmKSkKICAgICBhZGp1c3RfZnJhbWVfc2l6ZSAoZiwg LTEsIC0xLCAyLCBmYWxzZSwgUXRvb2xfYmFyX2xpbmVzKTsKQEAgLTU1MjEsOCArNTU2NiwxMCBA QCB4Z19jcmVhdGVfdG9vbF9iYXIgKHN0cnVjdCBmcmFtZSAqZikKICAgZ3RrX3Rvb2xiYXJfc2V0 X3N0eWxlIChHVEtfVE9PTEJBUiAoeC0+dG9vbGJhcl93aWRnZXQpLCBHVEtfVE9PTEJBUl9JQ09O Uyk7CiAgIGd0a19vcmllbnRhYmxlX3NldF9vcmllbnRhdGlvbiAoR1RLX09SSUVOVEFCTEUgKHgt PnRvb2xiYXJfd2lkZ2V0KSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHVEtf T1JJRU5UQVRJT05fSE9SSVpPTlRBTCk7Ci0gIGdfc2lnbmFsX2Nvbm5lY3QgKHgtPnRvb2xiYXJf d2lkZ2V0LCAic2l6ZS1hbGxvY2F0ZSIsCi0gICAgICAgICAgICAgICAgICAgIEdfQ0FMTEJBQ0sg KHRiX3NpemVfY2IpLCBmKTsKKyAgZ19zaWduYWxfY29ubmVjdF9kYXRhICh4LT50b29sYmFyX3dp ZGdldCwgInNpemUtYWxsb2NhdGUiLAorCQkJIEdfQ0FMTEJBQ0sgKHRiX3NpemVfY2IpLAorCQkJ IGdsaWJfdXNlcl9kYXRhIChmKSwgZ2xpYl9mcmVlX3VzZXJfZGF0YSwKKwkJCSBHX0NPTk5FQ1Rf REVGQVVMVCk7CiAjaWZkZWYgSEFWRV9HVEszCiAgIGdzdHkgPSBndGtfd2lkZ2V0X2dldF9zdHls ZV9jb250ZXh0ICh4LT50b29sYmFyX3dpZGdldCk7CiAgIGd0a19zdHlsZV9jb250ZXh0X2FkZF9j bGFzcyAoZ3N0eSwgInByaW1hcnktdG9vbGJhciIpOwpAQCAtNjMzNyw3ICs2Mzg0LDcgQEAgeGdf dmlydHVhbF9tb2RzX3RvX3ggKHN0cnVjdCB4X2Rpc3BsYXlfaW5mbyAqZHB5aW5mbywgZ3VpbnQg dmlydHVhbCkKIHhnX2ltX2NvbnRleHRfY29tbWl0IChHdGtJTUNvbnRleHQgKmltYywgZ2NoYXIg KnN0ciwKIAkJICAgICAgZ3BvaW50ZXIgdXNlcl9kYXRhKQogewotICBzdHJ1Y3QgZnJhbWUgKmYg PSB1c2VyX2RhdGE7CisgIHN0cnVjdCBmcmFtZSAqZiA9ICooc3RydWN0IGZyYW1lICoqKXVzZXJf ZGF0YTsKICAgc3RydWN0IGlucHV0X2V2ZW50IGllOwogI2lmZGVmIEhBVkVfWElOUFVUMgogICBz dHJ1Y3QgeGlfZGV2aWNlX3QgKnNvdXJjZTsKQEAgLTY3MDgsNyArNjc1NSw3IEBAIHhnX2ZpbHRl cl9rZXkgKHN0cnVjdCBmcmFtZSAqZnJhbWUsIFhFdmVudCAqeGtleSkKIHN0YXRpYyB2b2lkCiB4 Z193aWRnZXRfc3R5bGVfdXBkYXRlZCAoR3RrV2lkZ2V0ICp3aWRnZXQsIGdwb2ludGVyIHVzZXJf ZGF0YSkKIHsKLSAgc3RydWN0IGZyYW1lICpmID0gdXNlcl9kYXRhOworICBzdHJ1Y3QgZnJhbWUg KmYgPSAqKHN0cnVjdCBmcmFtZSAqKil1c2VyX2RhdGE7CiAKICAgaWYgKGYtPmFscGhhX2JhY2tn cm91bmQgPCAxLjApCiAgICAgewpkaWZmIC0tZ2l0IGEvc3JjL3htZW51LmMgYi9zcmMveG1lbnUu YwppbmRleCA2ZGQ3YjNmMzdhMC4uZjMxOGRiNmY0MzMgMTAwNjQ0Ci0tLSBhL3NyYy94bWVudS5j CisrKyBiL3NyYy94bWVudS5jCkBAIC03OTMsNyArNzkzLDcgQEAgbWVudV9oaWdobGlnaHRfY2Fs bGJhY2sgKFdpZGdldCB3aWRnZXQsIExXTElCX0lEIGlkLCB2b2lkICpjYWxsX2RhdGEpCiBzdGF0 aWMgdm9pZAogbWVudWJhcl9zZWxlY3Rpb25fY2FsbGJhY2sgKEd0a1dpZGdldCAqd2lkZ2V0LCBn cG9pbnRlciBjbGllbnRfZGF0YSkKIHsKLSAgeGdfbWVudV9pdGVtX2NiX2RhdGEgKmNiX2RhdGEg PSBjbGllbnRfZGF0YTsKKyAgeGdfbWVudV9pdGVtX2NiX2RhdGEgKmNiX2RhdGEgPSAqKHhnX21l bnVfaXRlbV9jYl9kYXRhICoqKWNsaWVudF9kYXRhOwogCiAgIGlmICh4Z19jcmF6eV9jYWxsYmFj a19hYm9ydCkKICAgICByZXR1cm47CkBAIC0xNDc4LDcgKzE0NzgsNyBAQCBtZW51X3Bvc2l0aW9u X2Z1bmMgKEd0a01lbnUgKm1lbnUsIGdpbnQgKngsIGdpbnQgKnksIGdib29sZWFuICpwdXNoX2lu LCBncG9pbnRlcgogc3RhdGljIHZvaWQKIHBvcHVwX3NlbGVjdGlvbl9jYWxsYmFjayAoR3RrV2lk Z2V0ICp3aWRnZXQsIGdwb2ludGVyIGNsaWVudF9kYXRhKQogewotICB4Z19tZW51X2l0ZW1fY2Jf ZGF0YSAqY2JfZGF0YSA9IGNsaWVudF9kYXRhOworICB4Z19tZW51X2l0ZW1fY2JfZGF0YSAqY2Jf ZGF0YSA9ICooeGdfbWVudV9pdGVtX2NiX2RhdGEgKiopY2xpZW50X2RhdGE7CiAKICAgaWYgKHhn X2NyYXp5X2NhbGxiYWNrX2Fib3J0KSByZXR1cm47CiAgIGlmIChjYl9kYXRhKSBtZW51X2l0ZW1f c2VsZWN0aW9uID0gY2JfZGF0YS0+Y2FsbF9kYXRhOwotLSAKMi40NS4yCgo= --b1_sCWsRgaoZD6HQhcB1OLWEVTTgS0w4M65hA9oqDc--