From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Ryan Newsgroups: gmane.emacs.bugs Subject: bug#3984: Fix case where call-interactively is advised Date: Thu, 19 Sep 2013 21:58:29 -0700 Message-ID: <523BD5F5.1020600@thompsonclan.org> References: <20E00C7675E64356BF2F0B2A7E0ABDB1@us.oracle.com> <5232D333.8030206@thompsonclan.org> <523359CD.2070904@thompsonclan.org> <5233670E.4030703@thompsonclan.org> <5237C9FF.1000809@thompsonclan.org> <52388FEB.6020007@thompsonclan.org> <523A37A4.5060505@thompsonclan.org> <523A49BE.3060109@thompsonclan.org> <523AB06B.9090606@thompsonclan.org> <523B4F4E.3060204@thompsonclan.org> <523B73CF.4080105@thompsonclan.org> <523BCDBB.3000202@thompsonclan.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------090007000309060904010905" X-Trace: ger.gmane.org 1379653160 31452 80.91.229.3 (20 Sep 2013 04:59:20 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 20 Sep 2013 04:59:20 +0000 (UTC) Cc: 3984@debbugs.gnu.org To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Sep 20 06:59:23 2013 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 1VMsoM-0007fs-JD for geb-bug-gnu-emacs@m.gmane.org; Fri, 20 Sep 2013 06:59:22 +0200 Original-Received: from localhost ([::1]:54088 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VMsoL-0003G8-T5 for geb-bug-gnu-emacs@m.gmane.org; Fri, 20 Sep 2013 00:59:21 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:50517) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VMsoB-0003F3-Dp for bug-gnu-emacs@gnu.org; Fri, 20 Sep 2013 00:59:18 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VMso2-0000by-Uu for bug-gnu-emacs@gnu.org; Fri, 20 Sep 2013 00:59:11 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:42222) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VMso2-0000bs-RD for bug-gnu-emacs@gnu.org; Fri, 20 Sep 2013 00:59:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1VMso2-0008J7-DS for bug-gnu-emacs@gnu.org; Fri, 20 Sep 2013 00:59:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Ryan Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 20 Sep 2013 04:59:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 3984 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 3984-submit@debbugs.gnu.org id=B3984.137965312431905 (code B ref 3984); Fri, 20 Sep 2013 04:59:02 +0000 Original-Received: (at 3984) by debbugs.gnu.org; 20 Sep 2013 04:58:44 +0000 Original-Received: from localhost ([127.0.0.1]:50515 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1VMsnj-0008IW-Ol for submit@debbugs.gnu.org; Fri, 20 Sep 2013 00:58:44 -0400 Original-Received: from mail-pa0-f45.google.com ([209.85.220.45]:58420) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1VMsnh-0008II-EV for 3984@debbugs.gnu.org; Fri, 20 Sep 2013 00:58:42 -0400 Original-Received: by mail-pa0-f45.google.com with SMTP id bg4so261744pad.32 for <3984@debbugs.gnu.org>; Thu, 19 Sep 2013 21:58:35 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to :cc:subject:references:in-reply-to:content-type; bh=bA8cTBCofViJ8ZO0oUaRxaRP3sHlrLlCFbcjYuCyqvg=; b=H9QtMS1p+1KCcSEtBHTgoY3Mr+F0eq0nOhKiGjmgQi530L2l9YlRjLHgEMq857Q9Qd 2j8Rpkyzv7Tu6YtafcBS5YqDo+iH9LhEo6wQmSWRGnruC4luDpvvmaKYsjoFk30ubTm1 vdo1x/L7OD2L1m1O1v6MlHesbCMISdtXpIeZCwFLosjr0pF6K9iusWGIaLgVRnjZIi1k 9FHue/j+AnTOVdFraxtW59qh5trmzCU3S05rw7EWZW27Q2mEeln7jyxNPex5kQ5lDfLb HY9VBejt2e2g4kNfm39LXdoL6mkTAbMLZoMxbdcWf4bEnhWAIqkZYe9Tzr0ZBGTe9ksj gwiw== X-Gm-Message-State: ALoCoQkr1DNnJCmuzDURwK4cCvDJz97qVeohvFn1YpHnRYm+91DX4cWsMRMgHKAAQV5xvsPCHERj X-Received: by 10.68.134.6 with SMTP id pg6mr5803897pbb.67.1379653115489; Thu, 19 Sep 2013 21:58:35 -0700 (PDT) Original-Received: from [192.168.10.2] (user-0c9ha1q.cable.mindspring.com. [24.152.168.58]) by mx.google.com with ESMTPSA id tg7sm13019475pbc.36.1969.12.31.16.00.00 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 19 Sep 2013 21:58:33 -0700 (PDT) User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130801 Thunderbird/17.0.8 In-Reply-To: <523BCDBB.3000202@thompsonclan.org> 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:78598 Archived-At: This is a multi-part message in MIME format. --------------090007000309060904010905 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Here is a patch that applies over my previous patch and fixes "advice-test-called-interactively-p-4", which tests whether called-interactively-p returns the correct result when call-interactively is advised. On 9/19/13 9:23 PM, Ryan wrote: > After a little more consideration, I think I know what the bug is. The > goal of "advice--called-interactively-skip" is to skip all the > advice-related stack frames of the called function, not advice-related > stack frames for advice on call-interactively. > > I also came up with an idea to address this issue: a second function > added to called-interactively-p-functions that checks the current > stack frame for equality to the unadvised form of call-interactively > and if it finds it, skips past all the advice frames to the outermost > call. This will make it so that advising call-interactively does not > affect the return of called-interactively-p, but it will not fix the > "innermost around advice" problem. > > I'm trying to code up a solution now. I'll eventually find my way > through the twisty maze of fencepost errors. > > -Ryan --------------090007000309060904010905 Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="fix-advised-call-interactively.diff" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="fix-advised-call-interactively.diff" ZGlmZiAtLWdpdCBhL2xpc3AvZW1hY3MtbGlzcC9uYWR2aWNlLmVsIGIvbGlzcC9lbWFjcy1s aXNwL25hZHZpY2UuZWwKaW5kZXggOGIxNDlhYS4uMmRhYjg2NCAxMDA2NDQKLS0tIGEvbGlz cC9lbWFjcy1saXNwL25hZHZpY2UuZWwKKysrIGIvbGlzcC9lbWFjcy1saXNwL25hZHZpY2Uu ZWwKQEAgLTQ2MSw2ICs0NjEsMzYgQEAgb2YgdGhlIHBpZWNlIG9mIGFkdmljZS4iCiAgICAg ICAgICAgICAoZnVuY2FsbCBnZXQtbmV4dC1mcmFtZSkpKSkKICAgICAgICgtIGkgb3JpZ2kg MSkpKSkKIAorKGRlZnVuIGFkdmljZS11bmFkdmlzZWQtZm9ybSAoZnVuYykKKyAgIlJldHVy biB0aGUgZGVmaW5pdGlvbiBvZiBGVU5DIHdpdGggYWxsIGFkdmljZSBzdHJpcHBlZC4KKwor RlVOQyBtYXkgYmUgYSBmdW5jdGlvbiBkZWZpbml0aW9uIG9yIGEgc3ltYm9sIG5hbWluZyBh IGZ1bmN0aW9uLiIKKyAgKGxldCAoKGZ1bmMgKGluZGlyZWN0LWZ1bmN0aW9uIGZ1bmMpKSkK KyAgICAod2hpbGUgKGFkdmljZS0tcCBmdW5jKQorICAgICAgKHNldHEgZnVuYyAoYWR2aWNl LS1jZHIgZnVuYykpKQorICAgIGZ1bmMpKQorCis7OyBXaGVuIGBjYWxsLWludGVyYWN0aXZl bHknIGlzIGFkdmlzZWQsIGNhbGxlZC1pbnRlcmFjdGl2ZWx5LXAgbmVlZHMKKzs7IHRvIGJl IHRhdWdodCB0byBza2lwIHRoZSBhZHZpc2luZyBmcmFtZXMuCisoYWRkLWhvb2sgJ2NhbGxl ZC1pbnRlcmFjdGl2ZWx5LXAtZnVuY3Rpb25zCisgICAgICAgICAgIydhZHZpY2UtLWFkdmlz ZWQtY2FsbGVkLWludGVyYWN0aXZlbHktc2tpcCkKKyhkZWZ1biBhZHZpY2UtLWFkdmlzZWQt Y2FsbGVkLWludGVyYWN0aXZlbHktc2tpcCAob3JpZ2kgZnJhbWUxIGZyYW1lMikKKyAgKHdo ZW4gKGFuZCBmcmFtZTIKKyAgICAgICAgICAgICAobm90IChlcSAobnRoIDEgZnJhbWUyKSAn Y2FsbC1pbnRlcmFjdGl2ZWx5KSkKKyAgICAgICAgICAgICAoZXEgKGFkdmljZS11bmFkdmlz ZWQtZm9ybSAnY2FsbC1pbnRlcmFjdGl2ZWx5KQorICAgICAgICAgICAgICAgICAoaW5kaXJl Y3QtZnVuY3Rpb24gKG50aCAxIGZyYW1lMikpKSkKKyAgICA7OyBTa2lwIHVudGlsIGZyYW1l MiBpcyBhIGNhbGwgdG8gdGhlIHN5bWJvbCBjYWxsLWludGVyYWN0aXZlbHkuCisgICAgKGxl dCogKChpIG9yaWdpKQorICAgICAgICAgICAoZ2V0LW5leHQtZnJhbWUKKyAgICAgICAgICAg IChsYW1iZGEgKCkKKyAgICAgICAgICAgICAgKHNldHEgZnJhbWUxIGZyYW1lMikKKyAgICAg ICAgICAgICAgKHNldHEgZnJhbWUyIChpbnRlcm5hbC0tY2FsbGVkLWludGVyYWN0aXZlbHkt cC0tZ2V0LWZyYW1lIGkpKQorICAgICAgICAgICAgICAoc2V0cSBpICgxKyBpKSkpKSkKKyAg ICAgIChmdW5jYWxsIGdldC1uZXh0LWZyYW1lKQorICAgICAgKHdoaWxlIChhbmQgZnJhbWUy CisgICAgICAgICAgICAgICAgICAobm90IChlcSAobnRoIDEgZnJhbWUyKSAnY2FsbC1pbnRl cmFjdGl2ZWx5KSkpCisgICAgICAgIChmdW5jYWxsIGdldC1uZXh0LWZyYW1lKSkKKyAgICAg ICgtIGkgb3JpZ2kgMSkpKSkKIAogKHByb3ZpZGUgJ25hZHZpY2UpCiA7OzsgbmFkdmljZS5l bCBlbmRzIGhlcmUKZGlmZiAtLWdpdCBhL2xpc3Avc3Vici5lbCBiL2xpc3Avc3Vici5lbApp bmRleCA3NWM2YjNhLi5iNWY2ODJhIDEwMDY0NAotLS0gYS9saXNwL3N1YnIuZWwKKysrIGIv bGlzcC9zdWJyLmVsCkBAIC00MjcyLDggKzQyNzIsNiBAQCBjb21tYW5kIGlzIGNhbGxlZCBm cm9tIGEga2V5Ym9hcmQgbWFjcm8/IgogICAgICAgICAgICAgICAgICAoXyAoc2V0cSBpICgr IGkgc2tpcCAtMSkpIChmdW5jYWxsIGdldC1uZXh0LWZyYW1lKSkpKSkpKQogICAgICAgOzsg Tm93IGBmcmFtZScgc2hvdWxkIGJlICJ0aGUgZnVuY3Rpb24gZnJvbSB3aGljaCB3ZSB3ZXJl IGNhbGxlZCIuCiAgICAgICAocGNhc2UgKGNvbnMgZnJhbWUgbmV4dGZyYW1lKQotICAgICAg ICA7OyBObyBzdWJyIGNhbGxzIGBpbnRlcmFjdGl2ZS1wJywgc28gd2UgY2FuIHJ1bGUgdGhh dCBvdXQuCi0gICAgICAgIChgKCgsXyAsKHByZWQgKGxhbWJkYSAoZikgKHN1YnJwIChpbmRp cmVjdC1mdW5jdGlvbiBmKSkpKSAuICxfKSAuICxfKSBuaWwpCiAgICAgICAgIDs7IFNvbWVo b3csIEkgc29tZXRpbWVzIGdvdCBgY29tbWFuZC1leGVjdXRlJyByYXRoZXIgdGhhbgogICAg ICAgICA7OyBgY2FsbC1pbnRlcmFjdGl2ZWx5JyBvbiBteSBzdGFja3RyYWNlICE/CiAgICAg ICAgIDs7KGAoLF8gLiAodCBjb21tYW5kLWV4ZWN1dGUgLiAsXykpIHQpCmRpZmYgLS1naXQg YS90ZXN0L2F1dG9tYXRlZC9hZHZpY2UtdGVzdHMuZWwgYi90ZXN0L2F1dG9tYXRlZC9hZHZp Y2UtdGVzdHMuZWwKaW5kZXggYzhmMDZlNS4uMDFiZTNhYiAxMDA2NDQKLS0tIGEvdGVzdC9h dXRvbWF0ZWQvYWR2aWNlLXRlc3RzLmVsCisrKyBiL3Rlc3QvYXV0b21hdGVkL2FkdmljZS10 ZXN0cy5lbApAQCAtMTYzLDcgKzE2Myw2IEBAIFRoaXMgdGVzdHMgdGhlIGNhc2Ugb2YgdGhl IGlubmVybW9zdCBhZHZpY2UgYmVpbmcgYmVmb3JlIgogCiBUaGlzIHRlc3RzIHRoZSBjYXNl IHdoZXJlIGNhbGwtaW50ZXJhY3RpdmVseSBpdHNlbGYgaXMgYWR2aXNlZCwKIHdoaWNoIGlz IGN1cnJlbnRseSBicm9rZW4uIgotICA6ZXhwZWN0ZWQtcmVzdWx0IDpmYWlsZWQKICAgKGRl ZnVuIHNtLXRlc3Q3LjQgKCkgKGludGVyYWN0aXZlKSAoY29ucyAxIChjYWxsZWQtaW50ZXJh Y3RpdmVseS1wKSkpCiAgIChwb3N0LXJlc3RvcmUtZnVuYyBjYWxsLWludGVyYWN0aXZlbHkK ICAgICAoYWR2aWNlLWFkZCAnY2FsbC1pbnRlcmFjdGl2ZWx5IDpiZWZvcmUgIydpZ25vcmUp Cg== --------------090007000309060904010905--