From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#21313: 25.0.50; Strange errors from dbus-handle-event Date: Fri, 16 Oct 2015 10:02:08 +0300 Message-ID: <83pp0f70un.fsf@gnu.org> References: <877foo4nkd.fsf@gnu.org> <877fnikhms.fsf@gmail.com> <87oaguq2yw.fsf@gnu.org> <8737xtt8wt.fsf@gnu.org> <834mi95bx1.fsf@gnu.org> <87twq9roxn.fsf@gnu.org> <83wpv53rjn.fsf@gnu.org> <87h9m9rmgk.fsf@gmx.de> <87wpv4qzm2.fsf@gnu.org> <87a8s0v1lp.fsf@gmx.de> <87twq8gyk0.fsf@gnu.org> <87lhbk47hb.fsf@gnu.org> <83d1ww4416.fsf@gnu.org> <878u75rctw.fsf@gnu.org> <836129xtx8.fsf@gnu.org> <876129gs2a.fsf@gnu.org> <83twptw81l.fsf@gnu.org> <87eggwuzvi.fsf@gnu.org> <83d1wg8403.fsf@gnu.org> <87twps9grg.fsf@gnu.org> <837fmn9as2.fsf@gnu.org> <87pp0fo1mo.fsf@gnu.org> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1444979008 29992 80.91.229.3 (16 Oct 2015 07:03:28 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 16 Oct 2015 07:03:28 +0000 (UTC) Cc: michael.albinus@gmx.de, 21313@debbugs.gnu.org To: Tassilo Horn Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Oct 16 09:03:17 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 1Zmz2l-0002Nj-C0 for geb-bug-gnu-emacs@m.gmane.org; Fri, 16 Oct 2015 09:03:11 +0200 Original-Received: from localhost ([::1]:51182 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zmz2k-00085q-Ra for geb-bug-gnu-emacs@m.gmane.org; Fri, 16 Oct 2015 03:03:10 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:38184) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zmz2h-00085l-In for bug-gnu-emacs@gnu.org; Fri, 16 Oct 2015 03:03:08 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Zmz2c-0005ls-J6 for bug-gnu-emacs@gnu.org; Fri, 16 Oct 2015 03:03:07 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:34029) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zmz2c-0005ln-Fe for bug-gnu-emacs@gnu.org; Fri, 16 Oct 2015 03:03:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1Zmz2c-0002Bf-4y for bug-gnu-emacs@gnu.org; Fri, 16 Oct 2015 03:03:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 16 Oct 2015 07:03:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 21313 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 21313-submit@debbugs.gnu.org id=B21313.14449789308349 (code B ref 21313); Fri, 16 Oct 2015 07:03:02 +0000 Original-Received: (at 21313) by debbugs.gnu.org; 16 Oct 2015 07:02:10 +0000 Original-Received: from localhost ([127.0.0.1]:52970 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Zmz1m-0002Ab-9l for submit@debbugs.gnu.org; Fri, 16 Oct 2015 03:02:10 -0400 Original-Received: from mtaout28.012.net.il ([80.179.55.184]:41918) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Zmz1k-0002AS-4x for 21313@debbugs.gnu.org; Fri, 16 Oct 2015 03:02:09 -0400 Original-Received: from conversion-daemon.mtaout28.012.net.il by mtaout28.012.net.il (HyperSendmail v2007.08) id <0NWA00600WH9LB00@mtaout28.012.net.il> for 21313@debbugs.gnu.org; Fri, 16 Oct 2015 10:01:25 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([84.94.185.246]) by mtaout28.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NWA000YZWUDZV60@mtaout28.012.net.il>; Fri, 16 Oct 2015 10:01:25 +0300 (IDT) In-reply-to: <87pp0fo1mo.fsf@gnu.org> X-012-Sender: halo1@inter.net.il 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: 208.118.235.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:107665 Archived-At: > From: Tassilo Horn > Cc: michael.albinus@gmx.de, 21313@debbugs.gnu.org > Date: Fri, 16 Oct 2015 06:53:19 +0200 > > > I think I found the problem: the call to Fformat eventually calls > > print_object, which calls QUIT, which resets quit-flag. > > I've seen it now. Well, that's not what I would have expected. You should expect any potentially prolonged operation to call QUIT somewhere in its loop. That's standard Emacs coding practice, meant to make Emacs more responsive. > > So you need to change the beginning of read_char like this: > > > > ptrdiff_t count = SPECPDL_INDEX (); > > specbind (Qinhibit_quit, Qt); > > AUTO_STRING (format, "%S"); > > printf ("record_char: %s\n", SSDATA (CALLN (Fformat, format, c))); > > unbind_to (count, Qnil); > > Yes, that works. So that's the C version of (let ((inhibit-quit t)) > ...). So specbind creates a dynamic binding, and with unbind_to you pop > entries up to a given index again, right? Yes. See Flet (modulo the clutter) for a definitive evidence. (Btw, unwind-protect is implemented using the same mechanism in C.)