From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: EXC_BAD_ACCESS on Mac Date: Tue, 18 Jun 2013 05:48:51 +0300 Message-ID: <83li68rv58.fsf@gnu.org> References: <8361xcu6de.fsf@gnu.org> <20130618.031621.138397593356453484.kazu@iij.ad.jp> <83sj0gshlj.fsf@gnu.org> <20130618.044405.1130378281292486125.kazu@iij.ad.jp> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=iso-2022-jp Content-Transfer-Encoding: 8bit X-Trace: ger.gmane.org 1371523744 3831 80.91.229.3 (18 Jun 2013 02:49:04 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 18 Jun 2013 02:49:04 +0000 (UTC) Cc: emacs-devel@gnu.org To: Kazu Yamamoto (=?iso-2022-jp?B?GyRCOzNLXE9CSScbKEI=?=) Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jun 18 04:49:04 2013 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Uolya-0000QB-Su for ged-emacs-devel@m.gmane.org; Tue, 18 Jun 2013 04:48:57 +0200 Original-Received: from localhost ([::1]:35102 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Uolya-0007u5-GO for ged-emacs-devel@m.gmane.org; Mon, 17 Jun 2013 22:48:56 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:51021) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UolyW-0007tz-TY for emacs-devel@gnu.org; Mon, 17 Jun 2013 22:48:53 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UolyT-0007yN-Nd for emacs-devel@gnu.org; Mon, 17 Jun 2013 22:48:52 -0400 Original-Received: from mtaout22.012.net.il ([80.179.55.172]:59157) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UolyT-0007yG-Eg for emacs-devel@gnu.org; Mon, 17 Jun 2013 22:48:49 -0400 Original-Received: from conversion-daemon.a-mtaout22.012.net.il by a-mtaout22.012.net.il (HyperSendmail v2007.08) id <0MOK00800IFFOW00@a-mtaout22.012.net.il> for emacs-devel@gnu.org; Tue, 18 Jun 2013 05:48:48 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout22.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0MOK0089IIHB62B0@a-mtaout22.012.net.il>; Tue, 18 Jun 2013 05:48:48 +0300 (IDT) In-reply-to: <20130618.044405.1130378281292486125.kazu@iij.ad.jp> X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: Solaris 10 X-Received-From: 80.179.55.172 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:160550 Archived-At: > Date: Tue, 18 Jun 2013 04:44:05 +0900 (JST) > Cc: emacs-devel@gnu.org > From: Kazu Yamamoto (山本和彦) > > > > #1 0x000000010001b44d in fill_glyph_string (s=0x10c408758, face_id=1606399872, start=1606399888, end=1606399828, overlaps=677) at xdisp.c:22766 > > #2 0x000000010001bded in draw_glyphs (w=0x10c408758, x=8, row=0x7fff5fbfb790, area=1606399828, start=677, end=677, hl=DRAW_NORMAL_TEXT, overlaps=0) at xdisp.c:23384 > > > > So please look around and see what is going on in this glyph string. > > expose_area has: > > if (last > first) > draw_glyphs (w, first_x - start_x, row, area, > first - row->glyphs[area], last - row->glyphs[area], > DRAW_NORMAL_TEXT, 0); > } > > last is greater than first. But in your backtrace, draw_glyphs was not called from here, it was called from here: if (area == TEXT_AREA && row->fill_line_p) /* If row extends face to end of line write the whole line. */ draw_glyphs (w, 0, row, area, <<<<<<<<<<<<< line 28166 0, row->used[area], DRAW_NORMAL_TEXT, 0); Here's the backtrace again: (gdb) info stack #0 0x000000010001b317 in get_glyph_face_and_encoding (f=0x10c408758, glyph=0x5bfe, char2b=0x7fff5fbfb790, two_byte_p=0x7fff5fbfb754) at xdisp.c:22544 #1 0x000000010001b44d in fill_glyph_string (s=0x10c408758, face_id=1606399872, start=1606399888, end=1606399828, overlaps=677) at xdisp.c:22766 #2 0x000000010001bded in draw_glyphs (w=0x10c408758, x=8, row=0x7fff5fbfb790, area=1606399828, start=677, end=677, hl=DRAW_NORMAL_TEXT, overlaps=0) at xdisp.c:23384 #3 0x00000001000205fd in expose_area (w=0x10c408c68, row=0x2a5, r=0x7fff5fbfbbc8, area=1606399828) at xdisp.c:28166 #4 0x0000000100020775 in expose_line (w=0x10c408c68, row=0x1180f9f00, r=0x7fff5fbfbbc8) at xdisp.c:28224 So either the backtrace lies to us, or draw_glyphs is NOT called with START and END equal.