From unknown Sat Jun 21 03:29:19 2025 X-Loop: help-debbugs@gnu.org Subject: bug#7690: 23.2; lwlib-Xm.c Resent-From: Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 20 Dec 2010 20:15:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 7690 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 7690@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.129287608426436 (code B ref -1); Mon, 20 Dec 2010 20:15:03 +0000 Received: (at submit) by debbugs.gnu.org; 20 Dec 2010 20:14:44 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1PUm84-0006sI-0m for submit@debbugs.gnu.org; Mon, 20 Dec 2010 15:14:44 -0500 Received: from eggs.gnu.org ([140.186.70.92]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1PUlVd-0005zd-8A for submit@debbugs.gnu.org; Mon, 20 Dec 2010 14:35:02 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PUlbu-0005jT-MV for submit@debbugs.gnu.org; Mon, 20 Dec 2010 14:41:31 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.3 required=5.0 tests=BAYES_00, FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FROM, RCVD_IN_DNSWL_NONE, T_RP_MATCHES_RCVD, T_TO_NO_BRKTS_FREEMAIL autolearn=no version=3.3.1 Received: from lists.gnu.org ([199.232.76.165]:57013) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PUlbu-0005jP-KB for submit@debbugs.gnu.org; Mon, 20 Dec 2010 14:41:30 -0500 Received: from [140.186.70.92] (port=42128 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PUlbt-00018B-O3 for bug-gnu-emacs@gnu.org; Mon, 20 Dec 2010 14:41:30 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PUlbs-0005ii-3Y for bug-gnu-emacs@gnu.org; Mon, 20 Dec 2010 14:41:29 -0500 Received: from mailout-de.gmx.net ([213.165.64.22]:47570 helo=mail.gmx.net) by eggs.gnu.org with smtp (Exim 4.71) (envelope-from ) id 1PUlbr-0005hk-O3 for bug-gnu-emacs@gnu.org; Mon, 20 Dec 2010 14:41:28 -0500 Received: (qmail invoked by alias); 20 Dec 2010 19:41:21 -0000 Received: from d91-128-195-43.cust.tele2.at (EHLO say_hello) [91.128.195.43] by mail.gmx.net (mp052) with SMTP; 20 Dec 2010 20:41:21 +0100 X-Authenticated: #20636738 X-Provags-ID: V01U2FsdGVkX1+8iQUcdM28xeyx+jF3PLfpI7CCA4qv1JAY8AG+ps wA/d2vSp0R9jo4 From: Date: Mon, 20 Dec 2010 20:41:19 +0100 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Y-GMX-Trusted: 0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Spam-Score: -5.9 (-----) X-Mailman-Approved-At: Mon, 20 Dec 2010 15:14:41 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -5.9 (-----) While using ispell-buffer my Emacs crashed. After examining the core-dump I found the following: in lwlib/lwlib-Xm.c when val->contens=0 ------------------------------------------------------------ static void xm_update_menu (widget_instance* instance, Widget widget, widget_value* val, Boolean deep_p) { Widget* children; unsigned int num_children; int num_children_to_keep = 0; int i; widget_value* cur; children = XtCompositeChildren (widget, &num_children); /* Widget is a RowColumn widget whose contents have to be updated * to reflect the list of items in val->contents */ /* See how many buttons we can keep, and how many we must completely replace. */ if (val->contents == 0) num_children_to_keep = 0; else if (val->contents->change == STRUCTURAL_CHANGE) { if (children) { for (i = 0, cur = val->contents; (i < num_children && cur); /* how else to ditch unwanted children ?? - mgd */ i++, cur = cur->next) { if (cur->this_one_change == STRUCTURAL_CHANGE) break; } num_children_to_keep = i; } } else num_children_to_keep = num_children; /* Update all the buttons of the RowColumn, in order, except for those we are going to replace entirely. */ if (children) { for (i = 0, cur = val->contents; i < num_children_to_keep; i++) { if (!cur) { num_children_to_keep = i; break; } if (children [i]->core.being_destroyed || strcmp (XtName (children [i]), cur->name)) continue; update_one_menu_entry (instance, children [i], cur, deep_p); cur = cur->next; } } /* Now replace from scratch all the buttons after the last place that the top-level structure changed. */ if (val->contents->change == STRUCTURAL_CHANGE) <-- CRASH !!!! { destroy_all_children (widget, num_children_to_keep); make_menu_in_widget (instance, widget, val->contents, num_children_to_keep); } XtFree ((char *) children); } ------------------------------------------------------------ So I wrote a quick workaround: ------------------------------------------------------------ --- emacs-23.2/lwlib/lwlib-Xm.c.org 2010-12-16 22:45:47.000000000 +0100 +++ emacs-23.2/lwlib/lwlib-Xm.c 2010-12-16 22:47:11.000000000 +0100 @@ -825,7 +825,7 @@ /* Now replace from scratch all the buttons after the last place that the top-level structure changed. */ - if (val->contents->change == STRUCTURAL_CHANGE) + if (val->contents && val->contents->change == STRUCTURAL_CHANGE) { destroy_all_children (widget, num_children_to_keep); make_menu_in_widget (instance, widget, val->contents, ------------------------------------------------------------ That fixed the problem for me From debbugs-submit-bounces@debbugs.gnu.org Tue Dec 21 03:05:18 2010 Received: (at control) by debbugs.gnu.org; 21 Dec 2010 08:05:18 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1PUxDi-0008Mz-5S for submit@debbugs.gnu.org; Tue, 21 Dec 2010 03:05:18 -0500 Received: from vm-emlprdomr-03.its.yale.edu ([130.132.50.144]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1PUxDg-0008Mn-Dg for control@debbugs.gnu.org; Tue, 21 Dec 2010 03:05:16 -0500 Received: from furball (bb116-14-228-227.singnet.com.sg [116.14.228.227]) (authenticated bits=0) by vm-emlprdomr-03.its.yale.edu (8.14.4/8.14.4) with ESMTP id oBL8BcX8004983 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Tue, 21 Dec 2010 03:11:40 -0500 Received: by furball (Postfix, from userid 1000) id E20B7161D52; Tue, 21 Dec 2010 16:11:36 +0800 (SGT) From: Chong Yidong To: control@debbugs.gnu.org Subject: severity 7690 serious Date: Tue, 21 Dec 2010 16:11:36 +0800 Message-ID: <874oa71r5z.fsf@stupidchicken.com> MIME-Version: 1.0 Content-Type: text/plain X-Scanned-By: MIMEDefang 2.71 on 130.132.50.144 X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) severity 7690 serious thanks From unknown Sat Jun 21 03:29:19 2025 X-Loop: help-debbugs@gnu.org Subject: bug#7690: 23.2; lwlib-Xm.c References: In-Reply-To: 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: Sun, 23 Jan 2011 21:34:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 7690 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: weme24@gmx.net Cc: 7690@debbugs.gnu.org Received: via spool by 7690-submit@debbugs.gnu.org id=B7690.12958183913169 (code B ref 7690); Sun, 23 Jan 2011 21:34:02 +0000 Received: (at 7690) by debbugs.gnu.org; 23 Jan 2011 21:33:11 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Ph7Yd-0000p3-Ap for submit@debbugs.gnu.org; Sun, 23 Jan 2011 16:33:11 -0500 Received: from vm-emlprdomr-03.its.yale.edu ([130.132.50.144]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Ph7Yb-0000oq-LY for 7690@debbugs.gnu.org; Sun, 23 Jan 2011 16:33:10 -0500 Received: from furball (162.254.218.209.transedge.com [209.218.254.162]) (authenticated bits=0) by vm-emlprdomr-03.its.yale.edu (8.14.4/8.14.4) with ESMTP id p0NLf94t002241 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Sun, 23 Jan 2011 16:41:09 -0500 Received: by furball (Postfix, from userid 1000) id CDA0316079C; Sun, 23 Jan 2011 16:41:06 -0500 (EST) From: Chong Yidong Date: Sun, 23 Jan 2011 16:41:06 -0500 Message-ID: <87wrlvb8nh.fsf@stupidchicken.com> MIME-Version: 1.0 Content-Type: text/plain X-Scanned-By: MIMEDefang 2.71 on 130.132.50.144 X-Spam-Score: -2.5 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.5 (--) > While using ispell-buffer my Emacs crashed. After examining the > core-dump I found the following: > > in lwlib/lwlib-Xm.c > when val->contens=0 > > So I wrote a quick workaround: Thanks. This looks correct, and I've committed it. Sorry for the long delay. From debbugs-submit-bounces@debbugs.gnu.org Sun Jan 23 16:33:21 2011 Received: (at control) by debbugs.gnu.org; 23 Jan 2011 21:33:21 +0000 Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Ph7Ym-0000pN-KJ for submit@debbugs.gnu.org; Sun, 23 Jan 2011 16:33:20 -0500 Received: from vm-emlprdomr-06.its.yale.edu ([130.132.50.147]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Ph7Yl-0000pC-HX for control@debbugs.gnu.org; Sun, 23 Jan 2011 16:33:19 -0500 Received: from furball (162.254.218.209.transedge.com [209.218.254.162]) (authenticated bits=0) by vm-emlprdomr-06.its.yale.edu (8.14.4/8.14.4) with ESMTP id p0NLfJrI032313 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT) for ; Sun, 23 Jan 2011 16:41:19 -0500 Received: by furball (Postfix, from userid 1000) id EA99216079C; Sun, 23 Jan 2011 16:41:16 -0500 (EST) From: Chong Yidong To: control@debbugs.gnu.org Subject: close 7690 Date: Sun, 23 Jan 2011 16:41:16 -0500 Message-ID: <87tygzb8n7.fsf@stupidchicken.com> MIME-Version: 1.0 Content-Type: text/plain X-Scanned-By: MIMEDefang 2.71 on 130.132.50.147 X-Spam-Score: -2.5 (--) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.5 (--) close 7690 thanks