From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.bugs Subject: bug#20074: edebug tracing can't be stopped with 'S' Date: Sun, 15 Mar 2015 16:36:18 -0400 Message-ID: References: <20150315160649.53351.qmail@mail.muc.de> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1426451846 19890 80.91.229.3 (15 Mar 2015 20:37:26 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 15 Mar 2015 20:37:26 +0000 (UTC) Cc: 20074@debbugs.gnu.org, Mario Valencia To: Alan Mackenzie Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Sun Mar 15 21:37:15 2015 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 1YXFHb-0003dp-Ab for geb-bug-gnu-emacs@m.gmane.org; Sun, 15 Mar 2015 21:37:11 +0100 Original-Received: from localhost ([::1]:44679 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YXFHa-0007Q5-Ki for geb-bug-gnu-emacs@m.gmane.org; Sun, 15 Mar 2015 16:37:10 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:38272) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YXFHX-0007No-AE for bug-gnu-emacs@gnu.org; Sun, 15 Mar 2015 16:37:08 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YXFHS-0007NP-Uf for bug-gnu-emacs@gnu.org; Sun, 15 Mar 2015 16:37:07 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:48857) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YXFHS-0007NJ-RM for bug-gnu-emacs@gnu.org; Sun, 15 Mar 2015 16:37:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1YXFHS-0001xQ-K9 for bug-gnu-emacs@gnu.org; Sun, 15 Mar 2015 16:37:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Stefan Monnier Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 15 Mar 2015 20:37:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 20074 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 20074-submit@debbugs.gnu.org id=B20074.14264517827440 (code B ref 20074); Sun, 15 Mar 2015 20:37:02 +0000 Original-Received: (at 20074) by debbugs.gnu.org; 15 Mar 2015 20:36:22 +0000 Original-Received: from localhost ([127.0.0.1]:47421 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YXFGn-0001vw-IV for submit@debbugs.gnu.org; Sun, 15 Mar 2015 16:36:21 -0400 Original-Received: from ironport2-out.teksavvy.com ([206.248.154.181]:27692) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YXFGl-0001vn-83 for 20074@debbugs.gnu.org; Sun, 15 Mar 2015 16:36:20 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: ArsTAPOG1lQXW5EB/2dsb2JhbABbgwaDX4VTwGUEAgKBDUQBAQEBAQF8hA0BBAFWIwULCw4mEhQYDSSIOAjOIwEBAQEGAQEBAR6PeAeEKgWZX44agz4ihAoignMBAQE X-IPAS-Result: ArsTAPOG1lQXW5EB/2dsb2JhbABbgwaDX4VTwGUEAgKBDUQBAQEBAQF8hA0BBAFWIwULCw4mEhQYDSSIOAjOIwEBAQEGAQEBAR6PeAeEKgWZX44agz4ihAoignMBAQE X-IronPort-AV: E=Sophos;i="5.09,536,1418101200"; d="scan'208";a="113626224" Original-Received: from 23-91-145-1.cpe.pppoe.ca (HELO pastel.home) ([23.91.145.1]) by ironport2-out.teksavvy.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 15 Mar 2015 16:36:18 -0400 Original-Received: by pastel.home (Postfix, from userid 20848) id 37D6911C3; Sun, 15 Mar 2015 16:36:18 -0400 (EDT) In-Reply-To: <20150315160649.53351.qmail@mail.muc.de> (Alan Mackenzie's message of "15 Mar 2015 16:06:49 -0000") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) 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:100506 Archived-At: > What is happening is that while tracing, edebug is waiting for an input > event with "(sit-for 1)". When you type the "S", sit-for pushes it onto > `unread-command-events' and returns. Unfortunately, before calling the > recursive edit into the edebug command loop, `unread-command-events' gets > bound to nil, thus edebug doesn't see the "S". The motivation here is > probably to separate the "outside" event queue from edebug's event queue. Hmmm sounds like we indeed have a problem here. > Here is a fix (which Eli will probably call a workaround ;-). In trace > mode, the top event (if any) is pulled off the "outside" > `unread-command-events' and pushed onto edebug's binding of it. I don't quite understand your fix. AFAICT, the sit-for is inside the let-binding, so when we enter the sit-for, unread-command-events is nil (more or less for sure) because we just bound it to nil, and when we exit sit-for maybe unread-command-events is non-nil, but when we then exit the let-binding we throw away whether was added to unread-command-events. So I don't understand how changing the entrance to the let-binding fixes this problem, since it seems that the info gets lost when we exit the let-binding, rather than it being hidden by the let-binding when we enter it. What am I missing? Also, I wonder why the edebug.el code doesn't use the return value of `sit-for'. Stefan