From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: [Emacs-diffs] trunk r117640: * keyboard.c (safe_run_hook_funcall): Avoid consing around Date: Mon, 04 Aug 2014 03:28:30 -0400 Message-ID: References: NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1407137342 28687 80.91.229.3 (4 Aug 2014 07:29:02 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 4 Aug 2014 07:29:02 +0000 (UTC) Cc: emacs-devel@gnu.org To: Dmitry Antipov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Aug 04 09:28:55 2014 Return-path: Envelope-to: ged-emacs-devel@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 1XEChT-0005jl-DN for ged-emacs-devel@m.gmane.org; Mon, 04 Aug 2014 09:28:55 +0200 Original-Received: from localhost ([::1]:50676 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XEChS-0003jI-Qv for ged-emacs-devel@m.gmane.org; Mon, 04 Aug 2014 03:28:54 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:58135) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XEChI-0003hY-RO for emacs-devel@gnu.org; Mon, 04 Aug 2014 03:28:52 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XECh6-0006a4-Cs for emacs-devel@gnu.org; Mon, 04 Aug 2014 03:28:44 -0400 Original-Received: from smtp-pri-02-2.vtxnet.net ([212.147.62.156]:54138 helo=smtp-pri-02.vtxnet.net) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XECh6-0006Zm-6k for emacs-devel@gnu.org; Mon, 04 Aug 2014 03:28:32 -0400 Original-Received: from fmsmemgm.homelinux.net (dyn.83-228-141-040.dsl.vtx.ch [83.228.141.40]) by smtp-pri-02.vtxnet.net (VTX Services SA) with ESMTP id D927837DDAB; Mon, 4 Aug 2014 09:28:30 +0200 (CEST) Original-Received: by fmsmemgm.homelinux.net (Postfix, from userid 20848) id 313C2AE2F5; Mon, 4 Aug 2014 03:28:30 -0400 (EDT) In-Reply-To: (Dmitry Antipov's message of "Mon, 04 Aug 2014 04:03:42 +0000") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 212.147.62.156 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:173410 Archived-At: > safe_run_hooks (Lisp_Object hook) > { > - /* FIXME: our `internal_condition_case' does not provide any way to pass data > - to its body or to its handlers other than via globals such as > - dynamically-bound variables ;-) */ > ptrdiff_t count = SPECPDL_INDEX (); > + > specbind (Qinhibit_quit, hook); > - > run_hook_with_args (1, &hook, safe_run_hook_funcall); > - > unbind_to (count, Qnil); > } You remove the comment but don't fix the code accordingly: if the FIXME is not valid any more, than we should cleanly pass `hook' as argument rather than let-binding it to inhibit-quit. Stefan