From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: David Ponce Newsgroups: gmane.emacs.devel Subject: Re: NT Emacs crashes when selecting a menubar item Date: Fri, 26 Jul 2002 14:30:39 +0200 Sender: emacs-devel-admin@gnu.org Message-ID: <3D4140EF.4000607@dponce.com> References: <3D3EF831.3040008@dponce.com> <200207251807.g6PI7I907645@aztec.santafe.edu> NNTP-Posting-Host: localhost.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: main.gmane.org 1027686611 14396 127.0.0.1 (26 Jul 2002 12:30:11 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Fri, 26 Jul 2002 12:30:11 +0000 (UTC) Cc: emacs-devel@gnu.org Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.33 #1 (Debian)) id 17Y4EP-0003jr-00 for ; Fri, 26 Jul 2002 14:30:05 +0200 Original-Received: from fencepost.gnu.org ([199.232.76.164]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 17Y4UB-00044V-00 for ; Fri, 26 Jul 2002 14:46:23 +0200 Original-Received: from localhost ([127.0.0.1] helo=fencepost.gnu.org) by fencepost.gnu.org with esmtp (Exim 3.35 #1 (Debian)) id 17Y4Ec-0004qt-00; Fri, 26 Jul 2002 08:30:18 -0400 Original-Received: from smtp-out-6.wanadoo.fr ([193.252.19.25] helo=mel-rto6.wanadoo.fr) by fencepost.gnu.org with esmtp (Exim 3.35 #1 (Debian)) id 17Y4Dt-0004pd-00; Fri, 26 Jul 2002 08:29:33 -0400 Original-Received: from mel-rta9.wanadoo.fr (193.252.19.69) by mel-rto6.wanadoo.fr (6.5.007) id 3D1868370106B580; Fri, 26 Jul 2002 14:29:32 +0200 Original-Received: from dponce.com (193.249.43.179) by mel-rta9.wanadoo.fr (6.5.007) id 3D2A791A00893100; Fri, 26 Jul 2002 14:29:32 +0200 User-Agent: Mozilla/5.0 (Windows; U; WinNT4.0; en-US; rv:1.1b) Gecko/20020720 X-Accept-Language: fr, en-us, en Original-To: rms@gnu.org Errors-To: emacs-devel-admin@gnu.org X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.0.11 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.emacs.devel:6055 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:6055 > > >One interesting question is what data is in core before the start of >this object. Is any ASCII text present there? > Hi, I worked a little more on this problem and, simply calling fprintf in various locations in w32menu.c (I don't have a debugger), I found that the function `single_submenu' seems to receive corrupted data in static variable `menu_items'. Notice that I only observed garbaged menu item names in dynamic menus like "Buffers" (I use msb) or imenu. More details... Only after this line (w32menu.c::1268): wv->name = (char *) SDATA (item_name); The following fprintf showed corrupted data: fprintf(stderr, "single_submenu::1268/wv->name = SDATA (item_name) = %p@%s\n", wv->name, wv->name); Here is a snippet of the printed data (the first value of `item_name' seems correct, but the next ones are corrupted): [...] single_submenu::1268/wv->name = SDATA (item_name) = 01772128@Select and Paste single_submenu::1268/wv->name = SDATA (item_name) = 01EFC1D0@ wv->name...DEADBEEF; single_submenu::1268/wv->name = SDATA (item_name) = 01EFC1B4@ wv->nam...DEADBEEF; single_submenu::1268/wv->name = SDATA (item_name) = 01EF2B70@: Ditto. single_submenu::1268/wv->name = SDATA (item_name) = 01EF2B80@: Moved definitions. single_submenu::1268/wv->name = SDATA (item_name) = 01EFC198@K Void va...vironment. single_submenu::1268/wv->name = SDATA (item_name) = 01EFC17C@;; Unused ...$nterm)) [...] `item_name' is a local Lisp_Object variable initialized to (w32menu.c::1240): item_name = AREF (menu_items, i + MENU_ITEMS_ITEM_NAME); `menu_items' is initialized in the function `set_frame_menubar' (w32menu.c::1395): menu_items = f->menu_bar_vector; It seems that f->menu_bar_vector is setup in keyboard.c in function `menu_bar_items'. Maybe is there a problem here? I had a look at this function, but I lack more knowledge of Emacs internal (and probably C) to really understand its code. Nevertheless, I hope this report will help. David