From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: David Kastrup Newsgroups: gmane.emacs.devel Subject: Re: match-data aborts on mac os x Date: 15 Jul 2004 00:28:53 +0200 Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: References: <8BD2A419-D5D7-11D8-B79A-000D93AD2E12@lunch.org> NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: sea.gmane.org 1089844162 25007 80.91.224.253 (14 Jul 2004 22:29:22 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 14 Jul 2004 22:29:22 +0000 (UTC) Cc: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Thu Jul 15 00:29:14 2004 Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1BksFW-00077O-00 for ; Thu, 15 Jul 2004 00:29:14 +0200 Original-Received: from lists.gnu.org ([199.232.76.165]) by quimby.gnus.org with esmtp (Exim 3.35 #1 (Debian)) id 1BksFW-0008WV-00 for ; Thu, 15 Jul 2004 00:29:14 +0200 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1BksHy-0001vl-06 for emacs-devel@quimby.gnus.org; Wed, 14 Jul 2004 18:31:46 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.33) id 1BksHp-0001vY-Iy for emacs-devel@gnu.org; Wed, 14 Jul 2004 18:31:37 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.33) id 1BksHp-0001vF-3T for emacs-devel@gnu.org; Wed, 14 Jul 2004 18:31:37 -0400 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1BksHo-0001vC-TC for emacs-devel@gnu.org; Wed, 14 Jul 2004 18:31:37 -0400 Original-Received: from [199.232.76.164] (helo=fencepost.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.34) id 1BksFD-0004Ng-Tu for emacs-devel@gnu.org; Wed, 14 Jul 2004 18:28:55 -0400 Original-Received: from localhost ([127.0.0.1] helo=lola.goethe.zz) by fencepost.gnu.org with esmtp (Exim 4.34) id 1BksFD-0000pZ-44; Wed, 14 Jul 2004 18:28:55 -0400 Original-To: bryan o'connor In-Reply-To: <8BD2A419-D5D7-11D8-B79A-000D93AD2E12@lunch.org> Original-Lines: 35 User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3.50 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:25703 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:25703 --=-=-= bryan o'connor writes: > > There have been more changes at 06/29 and 06/30. Your search.c is > > newer than that? > > If it is, could you run Emacs under gdb and give a backtrace when it > > bugs out? > > i just tested a cvs version dated 6/28 and it did abort(). the > backtrace > is attached below. > > my keystrokes were: > M-x slime [return] > M-. prin1 [return] > M-. prin1 [return] > M-. prin1 [return] I have repeatedly stated that I had no clue what I was doing there, as I have no idea how Lisp data structures are implemented in C. I have begged in desperation that someone take a look at the patch before I check it in. No reaction. So that's where we are now. Does the following patch (where I, on a hunch, try using XSETBUFFER whenever assigning a buffer, without a clue about whether this has any relevance or not) change anything? --=-=-= Content-Type: text/x-patch Content-Disposition: attachment --- search.c 01 Jul 2004 00:48:54 +0200 1.183 +++ search.c 14 Jul 2004 23:58:13 +0200 @@ -2731,7 +2731,7 @@ if (BUFFERP (last_thing_searched) && !NILP (integers)) { - data[len] = last_thing_searched; + XSETBUFFER(data[len], last_thing_searched); len++; } @@ -2813,7 +2813,7 @@ marker = Fcar (list); if (BUFFERP (marker)) { - last_thing_searched = marker; + XSETBUFFER(last_thing_searched, marker); break; } if (i >= length) @@ -2873,7 +2873,10 @@ saved_search_regs.num_regs = search_regs.num_regs; saved_search_regs.start = search_regs.start; saved_search_regs.end = search_regs.end; - saved_last_thing_searched = last_thing_searched; + if (BUFFERP(last_thing_searched)) + XSETBUFFER (saved_last_thing_searched, last_thing_searched); + else + saved_last_thing_searched = last_thing_searched; last_thing_searched = Qnil; search_regs.num_regs = 0; search_regs.start = 0; @@ -2897,7 +2900,10 @@ search_regs.num_regs = saved_search_regs.num_regs; search_regs.start = saved_search_regs.start; search_regs.end = saved_search_regs.end; - last_thing_searched = saved_last_thing_searched; + if (BUFFERP (saved_last_thing_searched)) + XSETBUFFER(last_thing_searched,saved_last_thing_searched); + else + last_thing_searched = saved_last_thing_searched; saved_last_thing_searched = Qnil; search_regs_saved = 0; } --=-=-= Note: I'll be probably gone before the next reply, till Monday. -- David Kastrup, Kriemhildstr. 15, 44793 Bochum --=-=-= Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Emacs-devel mailing list Emacs-devel@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-devel --=-=-=--