From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Chong Yidong Newsgroups: gmane.emacs.bugs Subject: bug#5365: 23.1.91; Wrong type argument: keymapp, ("DEAD" . 35215396) Date: Wed, 13 Jan 2010 15:53:40 -0500 Message-ID: <87pr5d9163.fsf@stupidchicken.com> References: <87skab2ww3.fsf@turtle.gmx.de> <87ockyqq2c.fsf@turtle.gmx.de> <87aawigcam.fsf@stupidchicken.com> <87pr5d7w4m.fsf@stupidchicken.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1263417591 28346 80.91.229.12 (13 Jan 2010 21:19:51 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 13 Jan 2010 21:19:51 +0000 (UTC) Cc: Sven Joachim , 5365@debbugs.gnu.org To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Jan 13 22:19:43 2010 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1NVAcr-0000Qe-8H for geb-bug-gnu-emacs@m.gmane.org; Wed, 13 Jan 2010 22:19:37 +0100 Original-Received: from localhost ([127.0.0.1]:33280 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NVAcr-0001Fs-LV for geb-bug-gnu-emacs@m.gmane.org; Wed, 13 Jan 2010 16:19:37 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NVAce-00017r-Hh for bug-gnu-emacs@gnu.org; Wed, 13 Jan 2010 16:19:24 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1NVAcY-000152-Ov for bug-gnu-emacs@gnu.org; Wed, 13 Jan 2010 16:19:24 -0500 Original-Received: from [199.232.76.173] (port=45051 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NVAcY-00014z-Jb for bug-gnu-emacs@gnu.org; Wed, 13 Jan 2010 16:19:18 -0500 Original-Received: from debbugs.gnu.org ([140.186.70.43]:42287) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1NVAcY-0008TY-C5 for bug-gnu-emacs@gnu.org; Wed, 13 Jan 2010 16:19:18 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.69) (envelope-from ) id 1NVAE5-0000j2-SK; Wed, 13 Jan 2010 15:54:01 -0500 X-Loop: bug-gnu-emacs@gnu.org Resent-From: Chong Yidong Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 13 Jan 2010 20:54:01 +0000 Resent-Message-ID: Resent-Sender: bug-gnu-emacs@gnu.org X-Emacs-PR-Message: followup 5365 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Original-Received: via spool by 5365-submit@debbugs.gnu.org id=B5365.12634160292768 (code B ref 5365); Wed, 13 Jan 2010 20:54:01 +0000 Original-Received: (at 5365) by debbugs.gnu.org; 13 Jan 2010 20:53:49 +0000 Original-Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1NVADq-0000ib-UJ for submit@debbugs.gnu.org; Wed, 13 Jan 2010 15:53:49 -0500 Original-Received: from pantheon-po39.its.yale.edu ([130.132.50.100]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1NVADo-0000iS-P2 for 5365@debbugs.gnu.org; Wed, 13 Jan 2010 15:53:45 -0500 Original-Received: from furry (dhcp128036014123.central.yale.edu [128.36.14.123]) (authenticated bits=0) by pantheon-po39.its.yale.edu (8.12.11.20060308/8.12.11) with ESMTP id o0DKrew2017018 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Wed, 13 Jan 2010 15:53:40 -0500 Original-Received: by furry (Postfix, from userid 1000) id 6F26CC05D; Wed, 13 Jan 2010 13:53:40 -0700 (MST) In-Reply-To: (Stefan Monnier's message of "Wed, 13 Jan 2010 13:57:35 -0500") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.91 (gnu/linux) X-YaleITSMailFilter: Version 1.2c (attachment(s) not renamed) X-Spam-Score: -2.1 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list X-Spam-Score: -2.1 (--) Resent-Date: Wed, 13 Jan 2010 15:54:01 -0500 X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 3) 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: , Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:34295 Archived-At: Stefan Monnier writes: >>> Even if that's the case, I'm not sure why Vlocal_function_key_map is >>> getting garbage-collected, tho. > >> OK, I see one place where this could happen. In xterm.c:10207: > > terminal-> kboard = (KBOARD *) xmalloc (sizeof (KBOARD)); >> ... >> if (!EQ (XSYMBOL (Qvendor_specific_keysyms)->function, Qunbound)) >> { >> char *vendor = ServerVendor (dpy); >> /* Temporarily hide the partially initialized terminal */ >> terminal_list = terminal->next_terminal; >> UNBLOCK_INPUT; > terminal-> kboard->Vsystem_key_alist >> = call1 (Qvendor_specific_keysyms, >> vendor ? build_string (vendor) : empty_unibyte_string); >> BLOCK_INPUT; >> ... >> } > > Indeed, that looks risky. Why don't we add this new kboard to the > all_kboards list before calling Qvendor_specific_keysyms? We'd still have to protect the terminal object. I've checked in a fix that uses inhibit_garbage_collection, but if you'd like to replace this with a more elegant fix, go ahead. Since it appears to fix the problem (as far as Sven can tell), I'll close this bug. I'll forward the patch to the Debian bts too.