From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Paul Eggert Newsgroups: gmane.emacs.bugs Subject: bug#17647: 24.4.50; accept-process-output with process nil can miss output Date: Mon, 09 Jun 2014 20:40:12 -0700 Organization: UCLA Computer Science Department Message-ID: <53967E1C.8090403@cs.ucla.edu> References: <538D0714.609@cs.ucla.edu> <20140603214610.7e18398b@forcix.jorgenschaefer.de> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------020906020301050304050300" X-Trace: ger.gmane.org 1402371689 23179 80.91.229.3 (10 Jun 2014 03:41:29 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 10 Jun 2014 03:41:29 +0000 (UTC) Cc: 17647@debbugs.gnu.org To: Jorgen Schaefer Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Jun 10 05:41:22 2014 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1WuCw1-0002yg-AY for geb-bug-gnu-emacs@m.gmane.org; Tue, 10 Jun 2014 05:41:17 +0200 Original-Received: from localhost ([::1]:36390 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WuCw1-0003t7-0f for geb-bug-gnu-emacs@m.gmane.org; Mon, 09 Jun 2014 23:41:17 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:47280) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WuCvs-0003rv-5v for bug-gnu-emacs@gnu.org; Mon, 09 Jun 2014 23:41:13 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WuCvm-0007lx-NK for bug-gnu-emacs@gnu.org; Mon, 09 Jun 2014 23:41:08 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:51294) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WuCvm-0007lo-4v for bug-gnu-emacs@gnu.org; Mon, 09 Jun 2014 23:41:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1WuCvl-000176-Q0 for bug-gnu-emacs@gnu.org; Mon, 09 Jun 2014 23:41:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Paul Eggert Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 10 Jun 2014 03:41:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 17647 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 17647-submit@debbugs.gnu.org id=B17647.14023716294223 (code B ref 17647); Tue, 10 Jun 2014 03:41:01 +0000 Original-Received: (at 17647) by debbugs.gnu.org; 10 Jun 2014 03:40:29 +0000 Original-Received: from localhost ([127.0.0.1]:42444 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WuCvE-000160-Da for submit@debbugs.gnu.org; Mon, 09 Jun 2014 23:40:29 -0400 Original-Received: from smtp.cs.ucla.edu ([131.179.128.62]:60374) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1WuCvA-00015k-IV for 17647@debbugs.gnu.org; Mon, 09 Jun 2014 23:40:26 -0400 Original-Received: from localhost (localhost.localdomain [127.0.0.1]) by smtp.cs.ucla.edu (Postfix) with ESMTP id DC7F2A60004; Mon, 9 Jun 2014 20:40:17 -0700 (PDT) X-Virus-Scanned: amavisd-new at smtp.cs.ucla.edu Original-Received: from smtp.cs.ucla.edu ([127.0.0.1]) by localhost (smtp.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6FsH4dcud8pe; Mon, 9 Jun 2014 20:40:13 -0700 (PDT) Original-Received: from [192.168.1.9] (pool-108-0-233-62.lsanca.fios.verizon.net [108.0.233.62]) by smtp.cs.ucla.edu (Postfix) with ESMTPSA id 5991F39E8013; Mon, 9 Jun 2014 20:40:13 -0700 (PDT) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0 In-Reply-To: <20140603214610.7e18398b@forcix.jorgenschaefer.de> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 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.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:90208 Archived-At: This is a multi-part message in MIME format. --------------020906020301050304050300 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit I took a look at the nearby code and found some glitches that I can fix. Could you please try the attached patch (relative to trunk bzr 117299) and see whether it helps you, or at least does not hurt you? Thanks. --------------020906020301050304050300 Content-Type: text/plain; charset=UTF-8; name="apo.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="apo.patch" PT09IG1vZGlmaWVkIGZpbGUgJ3NyYy9DaGFuZ2VMb2cnCi0tLSBzcmMvQ2hhbmdlTG9nCTIw MTQtMDYtMTAgMDM6MTM6NDEgKzAwMDAKKysrIHNyYy9DaGFuZ2VMb2cJMjAxNC0wNi0xMCAw MzozNDoyMCArMDAwMApAQCAtMSwzICsxLDEzIEBACisyMDE0LTA2LTEwICBQYXVsIEVnZ2Vy dCAgPGVnZ2VydEBjcy51Y2xhLmVkdT4KKworCUF2b2lkIGhhbmdzIGluIGFjY2VwdC1wcm9j ZXNzLW91dHB1dCAoQnVnIzE3NjQ3KS4KKwkqIGxpc3AuaCwgcHJvY2Vzcy5jICh3YWl0X3Jl YWRpbmdfcHJvY2Vzc19pbnB1dCk6IFJldHVybiBpbnQsIG5vdCBib29sLgorCUFsbCB1c2Vz IGNoYW5nZWQuCisJKiBwcm9jZXNzLmMgKFNFTEVDVF9DQU5UX0RPX1dSSVRFX01BU0spOiBS ZW1vdmUgbWFjcm8sIHJlcGxhY2luZyB3aXRoIC4uLgorCShTRUxFQ1RfQ0FOX0RPX1dSSVRF X01BU0spOiAuLi4gbmV3IGNvbnN0YW50LCB3aXRoIGludmVydGVkIHNlbnNlLgorCUFsbCB1 c2VzIGNoYW5nZWQuCisJKHN0YXR1c19ub3RpZnkpOiBOZXcgYXJnIFdBSVRfUFJPQy4gIFJl dHVybiBpbnQsIG5vdCB2b2lkLiAgQWxsIHVzZXMgY2hhbmdlZC4KKwogMjAxNC0wNi0xMCAg RG1pdHJ5IEFudGlwb3YgIDxkbWFudGlwb3ZAeWFuZGV4LnJ1PgogCiAJKiBkaXNwZXh0ZXJu LmggKFBSRVBBUkVfRkFDRV9GT1JfRElTUExBWSk6IFJlbW92ZSBhcyBhIGR1cGxpY2F0ZSBv ZiAuLi4KCj09PSBtb2RpZmllZCBmaWxlICdzcmMvbGlzcC5oJwotLS0gc3JjL2xpc3AuaAky MDE0LTA2LTA4IDE4OjI3OjIyICswMDAwCisrKyBzcmMvbGlzcC5oCTIwMTQtMDYtMTAgMDM6 MzQ6MjAgKzAwMDAKQEAgLTQxNzgsMTAgKzQxNzgsOCBAQAogLyogRGVmaW5lZCBpbiBwcm9j ZXNzLmMuICAqLwogZXh0ZXJuIExpc3BfT2JqZWN0IFFDdHlwZSwgUWxvY2FsOwogZXh0ZXJu IHZvaWQga2lsbF9idWZmZXJfcHJvY2Vzc2VzIChMaXNwX09iamVjdCk7Ci1leHRlcm4gYm9v bCB3YWl0X3JlYWRpbmdfcHJvY2Vzc19vdXRwdXQgKGludG1heF90LCBpbnQsIGludCwgYm9v bCwKLQkJCQkJIExpc3BfT2JqZWN0LAotCQkJCQkgc3RydWN0IExpc3BfUHJvY2VzcyAqLAot CQkJCQkgaW50KTsKK2V4dGVybiBpbnQgd2FpdF9yZWFkaW5nX3Byb2Nlc3Nfb3V0cHV0IChp bnRtYXhfdCwgaW50LCBpbnQsIGJvb2wsIExpc3BfT2JqZWN0LAorCQkJCQlzdHJ1Y3QgTGlz cF9Qcm9jZXNzICosIGludCk7CiAvKiBNYXggdmFsdWUgZm9yIHRoZSBmaXJzdCBhcmd1bWVu dCBvZiB3YWl0X3JlYWRpbmdfcHJvY2Vzc19vdXRwdXQuICAqLwogI2lmIF9fR05VQ19fID09 IDMgfHwgKF9fR05VQ19fID09IDQgJiYgX19HTlVDX01JTk9SX18gPD0gNSkKIC8qIFdvcmsg YXJvdW5kIGEgYnVnIGluIEdDQyAzLjQuMiwga25vd24gdG8gYmUgZml4ZWQgaW4gR0NDIDQu Ni4zLgoKPT09IG1vZGlmaWVkIGZpbGUgJ3NyYy9wcm9jZXNzLmMnCi0tLSBzcmMvcHJvY2Vz cy5jCTIwMTQtMDYtMDkgMjA6MzE6MDYgKzAwMDAKKysrIHNyYy9wcm9jZXNzLmMJMjAxNC0w Ni0xMCAwMzozNDoyMCArMDAwMApAQCAtMjI0LDggKzIyNCw5IEBACiAvKiBPbmx5IFczMiBo YXMgdGhpcywgaXQgcmVhbGx5IG1lYW5zIHRoYXQgc2VsZWN0IGNhbid0IHRha2Ugd3JpdGUg bWFzay4gICovCiAjaWZkZWYgQlJPS0VOX05PTl9CTE9DS0lOR19DT05ORUNUCiAjdW5kZWYg Tk9OX0JMT0NLSU5HX0NPTk5FQ1QKLSNkZWZpbmUgU0VMRUNUX0NBTlRfRE9fV1JJVEVfTUFT SworZW51bSB7IFNFTEVDVF9DQU5fRE9fV1JJVEVfTUFTSyA9IGZhbHNlIH07CiAjZWxzZQor ZW51bSB7IFNFTEVDVF9DQU5fRE9fV1JJVEVfTUFTSyA9IHRydWUgfTsKICNpZm5kZWYgTk9O X0JMT0NLSU5HX0NPTk5FQ1QKICNpZmRlZiBIQVZFX1NFTEVDVAogI2lmIGRlZmluZWQgKEhB VkVfR0VUUEVFUk5BTUUpIHx8IGRlZmluZWQgKEdOVV9MSU5VWCkKQEAgLTI4MSw3ICsyODIs NyBAQAogc3RhdGljIGJvb2wga2V5Ym9hcmRfYml0X3NldCAoZmRfc2V0ICopOwogI2VuZGlm CiBzdGF0aWMgdm9pZCBkZWFjdGl2YXRlX3Byb2Nlc3MgKExpc3BfT2JqZWN0KTsKLXN0YXRp YyB2b2lkIHN0YXR1c19ub3RpZnkgKHN0cnVjdCBMaXNwX1Byb2Nlc3MgKik7CitzdGF0aWMg aW50IHN0YXR1c19ub3RpZnkgKHN0cnVjdCBMaXNwX1Byb2Nlc3MgKiwgc3RydWN0IExpc3Bf UHJvY2VzcyAqKTsKIHN0YXRpYyBpbnQgcmVhZF9wcm9jZXNzX291dHB1dCAoTGlzcF9PYmpl Y3QsIGludCk7CiBzdGF0aWMgdm9pZCBoYW5kbGVfY2hpbGRfc2lnbmFsIChpbnQpOwogc3Rh dGljIHZvaWQgY3JlYXRlX3B0eSAoTGlzcF9PYmplY3QpOwpAQCAtODYwLDcgKzg2MSw3IEBA CiAgICAgewogICAgICAgcHNldF9zdGF0dXMgKHAsIGxpc3QyIChRZXhpdCwgbWFrZV9udW1i ZXIgKDApKSk7CiAgICAgICBwLT50aWNrID0gKytwcm9jZXNzX3RpY2s7Ci0gICAgICBzdGF0 dXNfbm90aWZ5IChwKTsKKyAgICAgIHN0YXR1c19ub3RpZnkgKHAsIE5VTEwpOwogICAgICAg cmVkaXNwbGF5X3ByZXNlcnZlX2VjaG9fYXJlYSAoMTMpOwogICAgIH0KICAgZWxzZQpAQCAt ODgwLDcgKzg4MSw3IEBACiAJICAgIHBzZXRfc3RhdHVzIChwLCBsaXN0MiAoUXNpZ25hbCwg bWFrZV9udW1iZXIgKFNJR0tJTEwpKSk7CiAKIAkgIHAtPnRpY2sgPSArK3Byb2Nlc3NfdGlj azsKLQkgIHN0YXR1c19ub3RpZnkgKHApOworCSAgc3RhdHVzX25vdGlmeSAocCwgTlVMTCk7 CiAJICByZWRpc3BsYXlfcHJlc2VydmVfZWNob19hcmVhICgxMyk7CiAJfQogICAgIH0KQEAg LTM5ODYsMTIgKzM5ODcsMTMgQEAKICAgICBuc2VjcyA9IDA7CiAKICAgcmV0dXJuCi0gICAg KHdhaXRfcmVhZGluZ19wcm9jZXNzX291dHB1dCAoc2VjcywgbnNlY3MsIDAsIDAsCisgICAg KCh3YWl0X3JlYWRpbmdfcHJvY2Vzc19vdXRwdXQgKHNlY3MsIG5zZWNzLCAwLCAwLAogCQkJ CSAgUW5pbCwKIAkJCQkgICFOSUxQIChwcm9jZXNzKSA/IFhQUk9DRVNTIChwcm9jZXNzKSA6 IE5VTEwsCiAJCQkJICBOSUxQIChqdXN0X3RoaXNfb25lKSA/IDAgOgogCQkJCSAgIUlOVEVH RVJQIChqdXN0X3RoaXNfb25lKSA/IDEgOiAtMSkKLSAgICAgPyBRdCA6IFFuaWwpOworICAg ICAgPD0gMCkKKyAgICAgPyBRbmlsIDogUXQpOwogfQogCiAvKiBBY2NlcHQgYSBjb25uZWN0 aW9uIGZvciBzZXJ2ZXIgcHJvY2VzcyBTRVJWRVIgb24gQ0hBTk5FTC4gICovCkBAIC00MjYy LDEwICs0MjY0LDExIEBACiAgICAgIChzdXNwZW5kaW5nIG91dHB1dCBmcm9tIG90aGVyIHBy b2Nlc3NlcykuICBBIG5lZ2F0aXZlIHZhbHVlCiAgICAgIG1lYW5zIGRvbid0IHJ1biBhbnkg dGltZXJzIGVpdGhlci4KIAotICAgUmV0dXJuIHRydWUgaWYgd2UgcmVjZWl2ZWQgaW5wdXQg ZnJvbSBXQUlUX1BST0MsIG9yIGZyb20gYW55Ci0gICBwcm9jZXNzIGlmIFdBSVRfUFJPQyBp cyBudWxsLiAgKi8KKyAgIFJldHVybiBwb3NpdGl2ZSBpZiB3ZSByZWNlaXZlZCBpbnB1dCBm cm9tIFdBSVRfUFJPQyAob3IgZnJvbSBhbnkKKyAgIHByb2Nlc3MgaWYgV0FJVF9QUk9DIGlz IG51bGwpLCB6ZXJvIGlmIHdlIGF0dGVtcHRlZCB0byByZWNlaXZlCisgICBpbnB1dCBidXQg Z290IG5vbmUsIGFuZCBuZWdhdGl2ZSBpZiB3ZSBkaWRuJ3QgZXZlbiB0cnkuICAqLwogCi1i b29sCitpbnQKIHdhaXRfcmVhZGluZ19wcm9jZXNzX291dHB1dCAoaW50bWF4X3QgdGltZV9s aW1pdCwgaW50IG5zZWNzLCBpbnQgcmVhZF9rYmQsCiAJCQkgICAgIGJvb2wgZG9fZGlzcGxh eSwKIAkJCSAgICAgTGlzcF9PYmplY3Qgd2FpdF9mb3JfY2VsbCwKQEAgLTQyODAsOCArNDI4 Myw3IEBACiAgIGludCB4ZXJybm87CiAgIExpc3BfT2JqZWN0IHByb2M7CiAgIHN0cnVjdCB0 aW1lc3BlYyB0aW1lb3V0LCBlbmRfdGltZTsKLSAgaW50IHdhaXRfY2hhbm5lbCA9IC0xOwot ICBib29sIGdvdF9zb21lX2lucHV0ID0gMDsKKyAgaW50IGdvdF9zb21lX2lucHV0ID0gLTE7 CiAgIHB0cmRpZmZfdCBjb3VudCA9IFNQRUNQRExfSU5ERVggKCk7CiAKICAgRkRfWkVSTyAo JkF2YWlsYWJsZSk7CkBAIC00MjkyLDEwICs0Mjk0LDYgQEAKIAkgICAmJiBFUSAoWENBUiAo d2FpdF9wcm9jLT5zdGF0dXMpLCBRZXhpdCkpKQogICAgIG1lc3NhZ2UxICgiQmxvY2tpbmcg Y2FsbCB0byBhY2NlcHQtcHJvY2Vzcy1vdXRwdXQgd2l0aCBxdWl0IGluaGliaXRlZCEhIik7 CiAKLSAgLyogSWYgd2FpdF9wcm9jIGlzIGEgcHJvY2VzcyB0byB3YXRjaCwgc2V0IHdhaXRf Y2hhbm5lbCBhY2NvcmRpbmdseS4gICovCi0gIGlmICh3YWl0X3Byb2MgIT0gTlVMTCkKLSAg ICB3YWl0X2NoYW5uZWwgPSB3YWl0X3Byb2MtPmluZmQ7Ci0KICAgcmVjb3JkX3Vud2luZF9w cm90ZWN0X2ludCAod2FpdF9yZWFkaW5nX3Byb2Nlc3Nfb3V0cHV0X3Vud2luZCwKIAkJCSAg ICAgd2FpdGluZ19mb3JfdXNlcl9pbnB1dF9wKTsKICAgd2FpdGluZ19mb3JfdXNlcl9pbnB1 dF9wID0gcmVhZF9rYmQ7CkBAIC00MzMyLDYgKzQzMzAsMTAgQEAKICAgICAgIGlmICghIE5J TFAgKHdhaXRfZm9yX2NlbGwpICYmICEgTklMUCAoWENBUiAod2FpdF9mb3JfY2VsbCkpKQog CWJyZWFrOwogCisgICAgICAvKiBBZnRlciByZWFkaW5nIGlucHV0LCB2YWN1dW0gdXAgYW55 IGxlZnRvdmVycyB3aXRob3V0IHdhaXRpbmcuICAqLworICAgICAgaWYgKDAgPD0gZ290X3Nv bWVfaW5wdXQpCisJbnNlY3MgPSAtMTsKKwogICAgICAgLyogQ29tcHV0ZSB0aW1lIGZyb20g bm93IHRpbGwgd2hlbiB0aW1lIGxpbWl0IGlzIHVwLiAgKi8KICAgICAgIC8qIEV4aXQgaWYg YWxyZWFkeSBydW4gb3V0LiAgKi8KICAgICAgIGlmIChuc2VjcyA8IDApCkBAIC00NDUwLDcg KzQ0NTIsNyBAQAogCSAgICAgIC8qIEl0J3Mgb2theSBmb3IgdXMgdG8gZG8gdGhpcyBhbmQg dGhlbiBjb250aW51ZSB3aXRoCiAJCSB0aGUgbG9vcCwgc2luY2UgdGltZW91dCBoYXMgYWxy ZWFkeSBiZWVuIHplcm9lZCBvdXQuICAqLwogCSAgICAgIGNsZWFyX3dhaXRpbmdfZm9yX2lu cHV0ICgpOwotCSAgICAgIHN0YXR1c19ub3RpZnkgKE5VTEwpOworCSAgICAgIGdvdF9zb21l X2lucHV0ID0gc3RhdHVzX25vdGlmeSAoTlVMTCwgd2FpdF9wcm9jKTsKIAkgICAgICBpZiAo ZG9fZGlzcGxheSkgcmVkaXNwbGF5X3ByZXNlcnZlX2VjaG9fYXJlYSAoMTMpOwogCSAgICB9 CiAJfQpAQCAtNDQ3MiwxOCArNDQ3NCwyMyBAQAogCSAgd2hpbGUgKHdhaXRfcHJvYy0+aW5m ZCA+PSAwKQogCSAgICB7CiAJICAgICAgaW50IG5yZWFkID0gcmVhZF9wcm9jZXNzX291dHB1 dCAocHJvYywgd2FpdF9wcm9jLT5pbmZkKTsKLQotCSAgICAgIGlmIChucmVhZCA9PSAwKQot CQlicmVhazsKLQotCSAgICAgIGlmIChucmVhZCA+IDApCi0JCWdvdF9zb21lX2lucHV0ID0g cmVhZF9zb21lX2J5dGVzID0gMTsKLQkgICAgICBlbHNlIGlmIChucmVhZCA9PSAtMSAmJiAo ZXJybm8gPT0gRUlPIHx8IGVycm5vID09IEVBR0FJTikpCi0JCWJyZWFrOworCSAgICAgIGlm IChucmVhZCA8IDApCisJCXsKKwkJICBpZiAoZXJybm8gPT0gRUlPIHx8IGVycm5vID09IEVB R0FJTikKKwkJICAgIGJyZWFrOwogI2lmZGVmIEVXT1VMREJMT0NLCi0JICAgICAgZWxzZSBp ZiAobnJlYWQgPT0gLTEgJiYgRVdPVUxEQkxPQ0sgPT0gZXJybm8pCi0JCWJyZWFrOworCQkg IGlmIChlcnJubyA9PSBFV09VTERCTE9DSykKKwkJICAgIGJyZWFrOwogI2VuZGlmCisJCX0K KwkgICAgICBlbHNlCisJCXsKKwkJICBpZiAoZ290X3NvbWVfaW5wdXQgPCBucmVhZCkKKwkJ ICAgIGdvdF9zb21lX2lucHV0ID0gbnJlYWQ7CisJCSAgaWYgKG5yZWFkID09IDApCisJCSAg ICBicmVhazsKKwkJICByZWFkX3NvbWVfYnl0ZXMgPSB0cnVlOworCQl9CiAJICAgIH0KIAkg IGlmIChyZWFkX3NvbWVfYnl0ZXMgJiYgZG9fZGlzcGxheSkKIAkgICAgcmVkaXNwbGF5X3By ZXNlcnZlX2VjaG9fYXJlYSAoMTApOwpAQCAtNDUxNCwxMiArNDUyMSw4IEBACiAJICBlbHNl CiAJICAgIEF2YWlsYWJsZSA9IGlucHV0X3dhaXRfbWFzazsKICAgICAgICAgICBXcml0ZW9r ID0gd3JpdGVfbWFzazsKLSNpZmRlZiBTRUxFQ1RfQ0FOVF9ET19XUklURV9NQVNLCi0gICAg ICAgICAgY2hlY2tfd3JpdGUgPSAwOwotI2Vsc2UKLSAgICAgICAgICBjaGVja193cml0ZSA9 IDE7Ci0jZW5kaWYKLSAJICBjaGVja19kZWxheSA9IHdhaXRfY2hhbm5lbCA+PSAwID8gMCA6 IHByb2Nlc3Nfb3V0cHV0X2RlbGF5X2NvdW50OworIAkgIGNoZWNrX2RlbGF5ID0gd2FpdF9w cm9jID8gMCA6IHByb2Nlc3Nfb3V0cHV0X2RlbGF5X2NvdW50OworCSAgY2hlY2tfd3JpdGUg PSBTRUxFQ1RfQ0FOX0RPX1dSSVRFX01BU0s7CiAJfQogCiAgICAgICAvKiBJZiBmcmFtZSBz aXplIGhhcyBjaGFuZ2VkIG9yIHRoZSB3aW5kb3cgaXMgbmV3bHkgbWFwcGVkLApAQCAtNDU0 NSw2ICs0NTQ4LDcgQEAKIAl7CiAJICBuZmRzID0gcmVhZF9rYmQgPyAwIDogMTsKIAkgIG5v X2F2YWlsID0gMTsKKwkgIEZEX1pFUk8gKCZBdmFpbGFibGUpOwogCX0KIAogICAgICAgaWYg KCFub19hdmFpbCkKQEAgLTQ1NTQsNyArNDU1OCw3IEBACiAJICAvKiBTZXQgdGhlIHRpbWVv dXQgZm9yIGFkYXB0aXZlIHJlYWQgYnVmZmVyaW5nIGlmIGFueQogCSAgICAgcHJvY2VzcyBo YXMgbm9uLXplcm8gcmVhZF9vdXRwdXRfc2tpcCBhbmQgbm9uLXplcm8KIAkgICAgIHJlYWRf b3V0cHV0X2RlbGF5LCBhbmQgd2UgYXJlIG5vdCByZWFkaW5nIG91dHB1dCBmb3IgYQotCSAg ICAgc3BlY2lmaWMgd2FpdF9jaGFubmVsLiAgSXQgaXMgbm90IGV4ZWN1dGVkIGlmCisJICAg ICBzcGVjaWZpYyBwcm9jZXNzLiAgSXQgaXMgbm90IGV4ZWN1dGVkIGlmCiAJICAgICBWcHJv Y2Vzc19hZGFwdGl2ZV9yZWFkX2J1ZmZlcmluZyBpcyBuaWwuICAqLwogCSAgaWYgKHByb2Nl c3Nfb3V0cHV0X3NraXAgJiYgY2hlY2tfZGVsYXkgPiAwKQogCSAgICB7CkBAIC00NjY3LDEy ICs0NjcxLDYgQEAKIAkgICAgcmVwb3J0X2ZpbGVfZXJybm8gKCJGYWlsZWQgc2VsZWN0Iiwg UW5pbCwgeGVycm5vKTsKIAl9CiAKLSAgICAgIGlmIChub19hdmFpbCkKLQl7Ci0JICBGRF9a RVJPICgmQXZhaWxhYmxlKTsKLQkgIGNoZWNrX3dyaXRlID0gMDsKLQl9Ci0KICAgICAgIC8q IENoZWNrIGZvciBrZXlib2FyZCBpbnB1dCAqLwogICAgICAgLyogSWYgdGhlcmUgaXMgYW55 LCByZXR1cm4gaW1tZWRpYXRlbHkKIAkgdG8gZ2l2ZSBpdCBoaWdoZXIgcHJpb3JpdHkgdGhh biBzdWJwcm9jZXNzZXMgKi8KQEAgLTQ3MzksOSArNDczNyw2IEBACiAJaGFuZGxlX2lucHV0 X2F2YWlsYWJsZV9zaWduYWwgKFNJR0lPKTsKICNlbmRpZgogCi0gICAgICBpZiAoISB3YWl0 X3Byb2MpCi0JZ290X3NvbWVfaW5wdXQgfD0gbmZkcyA+IDA7Ci0KICAgICAgIC8qIElmIGNo ZWNraW5nIGlucHV0IGp1c3QgZ290IHVzIGEgc2l6ZS1jaGFuZ2UgZXZlbnQgZnJvbSBYLAog CSBvYmV5IGl0IG5vdyBpZiB3ZSBzaG91bGQuICAqLwogICAgICAgaWYgKHJlYWRfa2JkIHx8 ICEgTklMUCAod2FpdF9mb3JfY2VsbCkpCkBAIC00NzczLDEyICs0NzY4LDYgQEAKIAkgICAg ICAvKiBJZiB3YWl0aW5nIGZvciB0aGlzIGNoYW5uZWwsIGFycmFuZ2UgdG8gcmV0dXJuIGFz CiAJCSBzb29uIGFzIG5vIG1vcmUgaW5wdXQgdG8gYmUgcHJvY2Vzc2VkLiAgTm8gbW9yZQog CQkgd2FpdGluZy4gICovCi0JICAgICAgaWYgKHdhaXRfY2hhbm5lbCA9PSBjaGFubmVsKQot CQl7Ci0JCSAgd2FpdF9jaGFubmVsID0gLTE7Ci0JCSAgbnNlY3MgPSAtMTsKLQkJICBnb3Rf c29tZV9pbnB1dCA9IDE7Ci0JCX0KIAkgICAgICBwcm9jID0gY2hhbl9wcm9jZXNzW2NoYW5u ZWxdOwogCSAgICAgIGlmIChOSUxQIChwcm9jKSkKIAkJY29udGludWU7CkBAIC00Nzk0LDYg KzQ3ODMsOCBAQAogCQkgYnVmZmVyZWQtYWhlYWQgY2hhcmFjdGVyIGlmIHdlIGhhdmUgb25l LiAgKi8KIAogCSAgICAgIG5yZWFkID0gcmVhZF9wcm9jZXNzX291dHB1dCAocHJvYywgY2hh bm5lbCk7CisJICAgICAgaWYgKCghd2FpdF9wcm9jIHx8IHdhaXRfcHJvYyA9PSBYUFJPQ0VT UyAocHJvYykpICYmIGdvdF9zb21lX2lucHV0IDwgbnJlYWQpCisJCWdvdF9zb21lX2lucHV0 ID0gbnJlYWQ7CiAJICAgICAgaWYgKG5yZWFkID4gMCkKIAkJewogCQkgIC8qIFNpbmNlIHJl YWRfcHJvY2Vzc19vdXRwdXQgY2FuIHJ1biBhIGZpbHRlciwKQEAgLTU4MTQsNyArNTgwNSw3 IEBACiAgICAgICBwLT50aWNrID0gKytwcm9jZXNzX3RpY2s7CiAgICAgICBpZiAoIW5vbXNn KQogCXsKLQkgIHN0YXR1c19ub3RpZnkgKE5VTEwpOworCSAgc3RhdHVzX25vdGlmeSAoTlVM TCwgTlVMTCk7CiAJICByZWRpc3BsYXlfcHJlc2VydmVfZWNob19hcmVhICgxMyk7CiAJfQog ICAgIH0KQEAgLTYzMzcsMTQgKzYzMjgsMjAgQEAKIC8qIFJlcG9ydCBhbGwgcmVjZW50IGV2 ZW50cyBvZiBhIGNoYW5nZSBpbiBwcm9jZXNzIHN0YXR1cwogICAgKGVpdGhlciBydW4gdGhl IHNlbnRpbmVsIG9yIG91dHB1dCBhIG1lc3NhZ2UpLgogICAgVGhpcyBpcyB1c3VhbGx5IGRv bmUgd2hpbGUgRW1hY3MgaXMgd2FpdGluZyBmb3Iga2V5Ym9hcmQgaW5wdXQKLSAgIGJ1dCBj YW4gYmUgZG9uZSBhdCBvdGhlciB0aW1lcy4gICovCi0KLXN0YXRpYyB2b2lkCi1zdGF0dXNf bm90aWZ5IChzdHJ1Y3QgTGlzcF9Qcm9jZXNzICpkZWxldGluZ19wcm9jZXNzKQorICAgYnV0 IGNhbiBiZSBkb25lIGF0IG90aGVyIHRpbWVzLgorCisgICBSZXR1cm4gcG9zaXRpdmUgaWYg YW55IGlucHV0IHdhcyByZWNlaXZlZCBmcm9tIFdBSVRfUFJPQyAob3IgZnJvbQorICAgYW55 IHByb2Nlc3MgaWYgV0FJVF9QUk9DIGlzIG51bGwpLCB6ZXJvIGlmIGlucHV0IHdhcyBhdHRl bXB0ZWQgYnV0CisgICBub25lIHJlY2VpdmVkLCBhbmQgbmVnYXRpdmUgaWYgd2UgZGlkbid0 IGV2ZW4gdHJ5LiAgKi8KKworc3RhdGljIGludAorc3RhdHVzX25vdGlmeSAoc3RydWN0IExp c3BfUHJvY2VzcyAqZGVsZXRpbmdfcHJvY2VzcywKKwkgICAgICAgc3RydWN0IExpc3BfUHJv Y2VzcyAqd2FpdF9wcm9jKQogewotICByZWdpc3RlciBMaXNwX09iamVjdCBwcm9jOworICBM aXNwX09iamVjdCBwcm9jOwogICBMaXNwX09iamVjdCB0YWlsLCBtc2c7CiAgIHN0cnVjdCBn Y3BybyBnY3BybzEsIGdjcHJvMjsKKyAgaW50IGdvdF9zb21lX2lucHV0ID0gLTE7CiAKICAg dGFpbCA9IFFuaWw7CiAgIG1zZyA9IFFuaWw7CkBAIC02Mzc0LDggKzYzNzEsMTQgQEAKIAkJ IC8qIE5ldHdvcmsgb3Igc2VyaWFsIHByb2Nlc3Mgbm90IHN0b3BwZWQ6ICAqLwogCQkgJiYg ISBFUSAocC0+Y29tbWFuZCwgUXQpCiAJCSAmJiBwLT5pbmZkID49IDAKLQkJICYmIHAgIT0g ZGVsZXRpbmdfcHJvY2VzcwotCQkgJiYgcmVhZF9wcm9jZXNzX291dHB1dCAocHJvYywgcC0+ aW5mZCkgPiAwKTsKKwkJICYmIHAgIT0gZGVsZXRpbmdfcHJvY2VzcykKKwkgICAgeworCSAg ICAgIGludCBucmVhZCA9IHJlYWRfcHJvY2Vzc19vdXRwdXQgKHByb2MsIHAtPmluZmQpOwor CSAgICAgIGlmIChnb3Rfc29tZV9pbnB1dCA8IG5yZWFkKQorCQlnb3Rfc29tZV9pbnB1dCA9 IG5yZWFkOworCSAgICAgIGlmIChucmVhZCA8PSAwKQorCQlicmVhazsKKwkgICAgfQogCiAJ ICAvKiBHZXQgdGhlIHRleHQgdG8gdXNlIGZvciB0aGUgbWVzc2FnZS4gICovCiAJICBpZiAo cC0+cmF3X3N0YXR1c19uZXcpCkBAIC02NDA3LDYgKzY0MTAsNyBAQAogCiAgIHVwZGF0ZV9t b2RlX2xpbmVzID0gMjQ7ICAvKiBJbiBjYXNlIGJ1ZmZlcnMgdXNlICVzIGluIG1vZGUtbGlu ZS1mb3JtYXQuICAqLwogICBVTkdDUFJPOworICByZXR1cm4gZ290X3NvbWVfaW5wdXQ7CiB9 CiAKIERFRlVOICgiaW50ZXJuYWwtZGVmYXVsdC1wcm9jZXNzLXNlbnRpbmVsIiwgRmludGVy bmFsX2RlZmF1bHRfcHJvY2Vzc19zZW50aW5lbCwKQEAgLTY2MTgsOSArNjYyMiwxMSBAQAog ICAgRE9fRElTUExBWSBtZWFucyByZWRpc3BsYXkgc2hvdWxkIGJlIGRvbmUgdG8gc2hvdyBz dWJwcm9jZXNzCiAgICBvdXRwdXQgdGhhdCBhcnJpdmVzLgogCi0gICBSZXR1cm4gdHJ1ZSBp ZiB3ZSByZWNlaXZlZCBpbnB1dCBmcm9tIGFueSBwcm9jZXNzLiAgKi8KKyAgIFJldHVybiBw b3NpdGl2ZSBpZiB3ZSByZWNlaXZlZCBpbnB1dCBmcm9tIFdBSVRfUFJPQyAob3IgZnJvbSBh bnkKKyAgIHByb2Nlc3MgaWYgV0FJVF9QUk9DIGlzIG51bGwpLCB6ZXJvIGlmIHdlIGF0dGVt cHRlZCB0byByZWNlaXZlCisgICBpbnB1dCBidXQgZ290IG5vbmUsIGFuZCBuZWdhdGl2ZSBp ZiB3ZSBkaWRuJ3QgZXZlbiB0cnkuICAqLwogCi1ib29sCitpbnQKIHdhaXRfcmVhZGluZ19w cm9jZXNzX291dHB1dCAoaW50bWF4X3QgdGltZV9saW1pdCwgaW50IG5zZWNzLCBpbnQgcmVh ZF9rYmQsCiAJCQkgICAgIGJvb2wgZG9fZGlzcGxheSwKIAkJCSAgICAgTGlzcF9PYmplY3Qg d2FpdF9mb3JfY2VsbCwKQEAgLTY4MDgsNyArNjgxNCw3IEBACiAKICAgc3RhcnRfcG9sbGlu ZyAoKTsKIAotICByZXR1cm4gMDsKKyAgcmV0dXJuIC0xOwogfQogCiAjZW5kaWYJLyogbm90 IHN1YnByb2Nlc3NlcyAqLwoK --------------020906020301050304050300--