From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: YAMAMOTO Mitsuharu Newsgroups: gmane.emacs.bugs Subject: bug#3399: Crash in multi-TTY mode Date: Thu, 28 May 2009 09:47:32 +0900 Organization: Faculty of Science, Chiba University Message-ID: References: <8369-76746@sneakemail.com> Reply-To: YAMAMOTO Mitsuharu , 3399@emacsbugs.donarmstrong.com NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII X-Trace: ger.gmane.org 1243473002 1820 80.91.229.12 (28 May 2009 01:10:02 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 28 May 2009 01:10:02 +0000 (UTC) Cc: 3399@emacsbugs.donarmstrong.com, Shannon Jones To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu May 28 03:09:58 2009 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 1M9U84-0007Vp-8Q for geb-bug-gnu-emacs@m.gmane.org; Thu, 28 May 2009 03:09:56 +0200 Original-Received: from localhost ([127.0.0.1]:60249 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1M9U83-0008E5-MQ for geb-bug-gnu-emacs@m.gmane.org; Wed, 27 May 2009 21:09:55 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1M9U7V-0007x3-GH for bug-gnu-emacs@gnu.org; Wed, 27 May 2009 21:09:21 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1M9U7Q-0007wD-2o for bug-gnu-emacs@gnu.org; Wed, 27 May 2009 21:09:20 -0400 Original-Received: from [199.232.76.173] (port=59533 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1M9U7P-0007vi-Qe for bug-gnu-emacs@gnu.org; Wed, 27 May 2009 21:09:15 -0400 Original-Received: from rzlab.ucr.edu ([138.23.92.77]:51398) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1M9U7O-0003yq-VZ for bug-gnu-emacs@gnu.org; Wed, 27 May 2009 21:09:15 -0400 Original-Received: from rzlab.ucr.edu (rzlab.ucr.edu [127.0.0.1]) by rzlab.ucr.edu (8.14.3/8.14.3/Debian-5) with ESMTP id n4S19CxN009382; Wed, 27 May 2009 18:09:12 -0700 Original-Received: (from debbugs@localhost) by rzlab.ucr.edu (8.14.3/8.14.3/Submit) id n4S0t9QT006843; Wed, 27 May 2009 17:55:09 -0700 X-Loop: owner@emacsbugs.donarmstrong.com Resent-From: YAMAMOTO Mitsuharu Resent-To: bug-submit-list@donarmstrong.com Resent-CC: Emacs Bugs Resent-Date: Thu, 28 May 2009 00:55:09 +0000 Resent-Message-ID: Resent-Sender: owner@emacsbugs.donarmstrong.com X-Emacs-PR-Message: followup 3399 X-Emacs-PR-Package: emacs X-Emacs-PR-Keywords: Original-Received: via spool by 3399-submit@emacsbugs.donarmstrong.com id=B3399.12434716595916 (code B ref 3399); Thu, 28 May 2009 00:55:09 +0000 Original-Received: (at 3399) by emacsbugs.donarmstrong.com; 28 May 2009 00:47:39 +0000 X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. Original-Received: from mathmail.math.s.chiba-u.ac.jp (mathmail.math.s.chiba-u.ac.jp [133.82.132.2]) by rzlab.ucr.edu (8.14.3/8.14.3/Debian-5) with ESMTP id n4S0lYif005911 for <3399@emacsbugs.donarmstrong.com>; Wed, 27 May 2009 17:47:36 -0700 Original-Received: from church.math.s.chiba-u.ac.jp (church [133.82.132.36]) by mathmail.math.s.chiba-u.ac.jp (Postfix) with ESMTP id DB5272C40; Thu, 28 May 2009 09:47:32 +0900 (JST) In-Reply-To: User-Agent: Wanderlust/2.14.0 (Africa) SEMI/1.14.6 (Maruoka) FLIM/1.14.8 =?UTF-8?Q?(Shij=C5=8D)?= APEL/10.6 Emacs/22.3 (sparc-sun-solaris2.8) MULE/5.0 (SAKAKI) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 3) Resent-Date: Wed, 27 May 2009 21:09:20 -0400 X-BeenThere: bug-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list 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:28250 Archived-At: >>>>> On Wed, 27 May 2009 10:31:20 -0400, Stefan Monnier said: >> I think this a bug in libX11. It should either 1) not set >> XlibDisplayDfltRMDB in XGetDefault unless dpy->db becomes non-NULL >> or 2) reset XlibDisplayDfltRMDB in XrmSetDatabase even if the >> previous database is NULL. > I'm not sure I understand all the details, but I really find the > workaround hideous (tho I do think you for coming up with it): what > if we undo your recent change that does > XrmSetDatabase(dpyinfo->display, NULL) and just free the xrm > database (i.e. introducing a double-free crash in older libX11)? > Would this also work around this problem? [To simplify the argument, I restrict myself to the GTK+ case below. My recent change includes a fix for the crash in the no-toolkit version.] The situation is classified into the three cases: 1. Older libX11 that doesn't care about XlibDisplayDfltRMDB at all. 2. Newer libX11, when the first XGetDefault call sets dpy->db to a non-NULL value. 3. Newer libX11, when the first XGetDefault call sets dpy->db to NULL. Case 3 corresponds to the problematic scenario I mentioned in my previous mail and the other cases should work fine currently. Undoing my recent change means that we don't destroy the database ourselves, and it leaks memory in Case 2 and 3. YAMAMOTO Mitsuharu mituharu@math.s.chiba-u.ac.jp