From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Ed Reingold Newsgroups: gmane.emacs.devel Subject: Re: crash in display, triggered by calendar Date: Tue, 06 Aug 2002 08:38:27 -0500 Sender: emacs-devel-admin@gnu.org Message-ID: <200208061338.g76DcRY20077@emr.cs.iit.edu> References: NNTP-Posting-Host: localhost.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1028641115 22390 127.0.0.1 (6 Aug 2002 13:38:35 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Tue, 6 Aug 2002 13:38:35 +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.35 #1 (Debian)) id 17c4Xh-0005p1-00 for ; Tue, 06 Aug 2002 15:38:33 +0200 Original-Received: from fencepost.gnu.org ([199.232.76.164]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 17c4so-0007y9-00 for ; Tue, 06 Aug 2002 16:00: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 17c4YC-0001KH-00; Tue, 06 Aug 2002 09:39:04 -0400 Original-Received: from charlie.cns.iit.edu ([216.47.143.70]) by fencepost.gnu.org with esmtp (Exim 3.35 #1 (Debian)) id 17c4Xf-0001E4-00; Tue, 06 Aug 2002 09:38:31 -0400 Original-Received: from emr.cs.iit.edu (emr.cs.iit.edu [216.47.142.126]) by charlie.cns.iit.edu (8.11.5/8.11.5) with ESMTP id g76DZQf9042885; Tue, 6 Aug 2002 08:35:26 -0500 (CDT) Original-Received: from emr.cs.iit.edu (localhost [127.0.0.1]) by emr.cs.iit.edu (8.10.2+Sun/8.10.2) with ESMTP id g76DcRY20077; Tue, 6 Aug 2002 08:38:27 -0500 (CDT) X-Mailer: exmh version 2.5 02/08/2002 with nmh-1.0.4 Original-To: sds@gnu.org In-Reply-To: Message from Sam Steingold of "06 Aug 2002 09:15:19 EDT." 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:6309 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:6309 Does the error below (the crash) occur in earlier releases--version 20, say? It hasn't happened to me. The diary processing code does NOT require that diary-file be writable or start with a newline. At least it is not supposed to. However, if the file does not begin and end with newlines they MUST be added or the simple diary display mechanism (selective display) cannot work; but this is done in a protected way, however (at least I thought it was). Since I still use version 20, I will need help in figuring out the error. By the way, if I had my druthers, there would be no simple diary display, only the fancy one, and the problem would not exist. The simple display is and has always been a problem; I added it at RMS's insistence. > GNU Emacs 21.3.50.22 (i686-pc-linux-gnu, X toolkit, Xaw3d scroll bars) > of 2002-08-06 on glip.premonitia.com > > in the CVS head emacs, build a minute ago: > > emacs has a long-standing bug: diary requires that diary-file > (normally "~/.diary") to be writable or to start with a newline > Now this old bug triggers a crash. > > $ cd ~ > $ mv .diary .diary.tmp > $ echo ';' > .diary > $ cat .diary.tmp >> .diary > $ rm -f .diary.tmp > $ chmod -w .diary > $ emacs > M-x calendar > M-x view-diary-entries > > you will get a message in the minibuffer that # is > read-only (even if you set debug-on-error to t, you will not get a > backtrace!) > > C-x b .diary RET > > ===> CRASH!!! > > > Program received signal SIGSEGV, Segmentation fault. > next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4819 > 4819 int success_p = 1; > (gdb) where > #0 next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4819 > #1 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #2 0x0806053f in forward_to_next_line_start (it=0xbfffe3f0, > skipped_p=0xbf8000a8) at xdisp.c:3871 > #3 0x08060781 in reseat_at_next_visible_line_start (it=0xbfffe3f0, > on_newline_p=1) at xdisp.c:3996 > #4 0x0806165b in next_element_from_ellipsis (it=0xbfffe3f0) at xdisp.c:4775 > #5 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #6 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #7 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #8 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #9 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #10 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #11 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #12 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #13 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #14 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #15 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #16 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #17 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #18 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #19 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #20 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #21 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #22 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #23 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #24 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #25 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #26 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #27 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #28 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #29 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #30 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #31 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #32 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #33 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #34 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #35 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #36 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #37 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #38 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #39 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #40 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #41 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #42 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #43 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #44 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #45 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #46 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #47 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #48 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #49 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #50 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #51 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #52 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #53 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #54 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #55 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #56 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > ---Type to continue, or q to quit--- > #57 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #58 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #59 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #60 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #61 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #62 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #63 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #64 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #65 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #66 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #67 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #68 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #69 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #70 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #71 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #72 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #73 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #74 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #75 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #76 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #77 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #78 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #79 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #80 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #81 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #82 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #83 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #84 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #85 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #86 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #87 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #88 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #89 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #90 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #91 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #92 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #93 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #94 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #95 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #96 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #97 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #98 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #99 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #100 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #101 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #102 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #103 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #104 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #105 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #106 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #107 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #108 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #109 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #110 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #111 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #112 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #113 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > #114 0x08060b88 in get_next_display_element (it=0xbfffe3f0) at xdisp.c:4213 > #115 0x080618eb in next_element_from_buffer (it=0xbfffe3f0) at xdisp.c:4909 > ---Type to continue, or q to quit---q > Quit > (gdb) p it > $3 = (struct it *) 0xbfffe3f0 > (gdb) p *it > $4 = { > window = 1212942904, > w = 0x84c0a38, > f = 0x84c0910, > method = 0x80616a4 , > stop_charpos = 5866, > end_charpos = 5866, > s = 0x0, > string_nchars = 0, > region_beg_charpos = -1, > region_end_charpos = -1, > redisplay_end_trigger_charpos = 0, > multibyte_p = 1, > header_line_p = 0, > string_from_display_prop_p = 0, > dp = 0x82d3f88, > dpvec = 0x0, > dpend = 0xbfffe43c, > dpvec_char_len = 1, > saved_face_id = 0, > ctl_chars = {94, 77, 0 }, > current = { > pos = { > charpos = 5865, > bytepos = 5865 > }, > overlay_string_index = -1, > string_pos = { > charpos = -1, > bytepos = -1 > }, > dpvec_index = -1 > }, > overlay_strings = {0, 0, 0}, > n_overlay_strings = 0, > string = 405361476, > stack = {{ > stop_charpos = 0, > face_id = 0, > string = 0, > pos = { > pos = { > charpos = 0, > bytepos = 0 > }, > overlay_string_index = 0, > string_pos = { > charpos = 0, > bytepos = 0 > }, > dpvec_index = 0 > }, > end_charpos = 0, > string_nchars = 0, > area = LEFT_MARGIN_AREA, > multibyte_p = 0, > string_from_display_prop_p = 0, > display_ellipsis_p = 0, > space_width = 0, > ---Type to continue, or q to quit--- > voffset = 0, > font_height = 0 > }, { > stop_charpos = 0, > face_id = 0, > string = 0, > pos = { > pos = { > charpos = 0, > bytepos = 0 > }, > overlay_string_index = 0, > string_pos = { > charpos = 0, > bytepos = 0 > }, > dpvec_index = 0 > }, > end_charpos = 0, > string_nchars = 0, > area = LEFT_MARGIN_AREA, > multibyte_p = 0, > string_from_display_prop_p = 0, > display_ellipsis_p = 0, > space_width = 0, > voffset = 0, > font_height = 0 > }}, > sp = 0, > selective_display_ellipsis_p = 0, > ctl_arrow_p = 1, > selective = 0, > what = IT_CHARACTER, > face_id = 0, > face_box_p = 0, > start_of_box_run_p = 0, > end_of_box_run_p = 0, > overlay_strings_at_end_processed_p = 1, > glyph_not_available_p = 0, > starts_in_middle_of_char_p = 0, > face_before_selective_p = 1, > base_face_id = 0, > c = 13, > len = 1, > cmp_id = 0, > cmp_len = 0, > char_to_display = 33, > image_id = 0, > space_width = 405361476, > voffset = 0, > font_height = 405361476, > object = 1215887680, > position = { > charpos = 5865, > bytepos = 5865 > }, > truncate_lines_p = 0, > tab_width = 8, > truncation_pixel_width = 0, > ---Type to continue, or q to quit--- > continuation_pixel_width = 0, > first_visible_x = 0, > last_visible_x = 480, > last_visible_y = 725, > extra_line_spacing = 0, > glyph_row = 0x84d149c, > area = TEXT_AREA, > nglyphs = 1, > pixel_width = 6, > ascent = 11, > descent = 2, > max_ascent = 11, > max_descent = 2, > phys_ascent = 9, > phys_descent = 0, > max_phys_ascent = 11, > max_phys_descent = 2, > current_x = 402, > continuation_lines_width = 0, > current_y = 91, > vpos = 7, > hpos = 59 > } > > > > > > -- > Sam Steingold (http://www.podval.org/~sds) running RedHat7.3 GNU/Linux > > > Are you smart enough to use Lisp? > > > _______________________________________________ > Emacs-devel mailing list > Emacs-devel@gnu.org > http://mail.gnu.org/mailman/listinfo/emacs-devel