unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Francesco Potorti` <pot@gnu.org>
Subject: Re: crash in RC branch
Date: Tue, 05 Nov 2002 16:50:31 +0100	[thread overview]
Message-ID: <E1895yJ-0007Xa-00@pot.cnuce.cnr.it> (raw)
In-Reply-To: <E188UHy-0002Tz-00@pot.cnuce.cnr.it>

I need help, because I don't know where to go from now on.  I suspect it
has something to do with latin-1 characters, and with C-g, but both of
these may be wrong.

The crash I am debugging is of the same nature of a crash that rms
helped me debugging on June, but I had not yet finished when I was
interrupted by a power outage.  These are the facts.

I visited a big (about 17 MB) rmail file.  After a while, since Emacs
took a long time to load it, I hit C-g.  Then I don't know exactly what
I did, and I do not manage to print the value of recent_keys in a
coprehensible way.  However, these are the last two messages in the
*Messages* buffer:

 rmail-decode-babyl-format: Quit
 kill-buffer: Quit

Notice that, in the previous instance of the crash I had on June, the
last message was:

 rmail-decode-babyl-format: Quit

This should mean that the file was in fact all in memory, and Emacs had
begun to convert it.

After that, Emacs aborted in get_local_map at intervals.c:

  /* Perhaps we should just change `position' to the limit.  */
  if (position > BUF_Z (buffer) || position < BUF_BEG (buffer))
    abort ();

What made it abort is the first condition.  In fact, in current_buffer:
 pt          = 17566287 (position)
 own_text.z  = 981      (BUF_Z)

The current buffer is the big rmail file, whose lenght is 17566288, and
in fact, in current_buffer:
 save_length = 17566288

The string in current_buffer at own_text.beg+pt is apparently nothing
strange: pure ASCII text in the middle of a line.

The buffer contents in memory are in the internal Emacs format, that is,
every latin-1 character is preceded by \201.

The gap size is big (as it was in the previous crash)
    gpt = 970, 
    z = 981, 
    gpt_byte = 970, 
    z_byte = 981, 
    gap_size = 17571308, 

The character in the file at point 970 is the first non-ASCII character
in the file, a latin-1 character (0350 octal).  In the buffer in memory:
 (gdb) p current_buffer->own_text.beg[969]
 $349 = 129 '\201'
 (gdb) p current_buffer->own_text.beg[970]
 $350 = 232 '\350'

I cannot look at the undo list, because it is nil (this is normal, I
think, in an rmail buffer during initialisation).

Here is some gdb output:

================================================================
-IT<-11:**-F1  *mail* 00:01 0.25 Mail   (Mail H Fa Abbrev Fill)--L2--C43--Top---
Switch to buffer: (default *shell*) SMAIL
Breakpoint 1, abort () at emacs.c:387
387       kill (getpid (), SIGABRT);

(gdb) bt
#0  abort () at emacs.c:387
#1  0x08173d2b in get_local_map () at intervals.c:2183
#2  0x080e597f in read_key_sequence (keybuf=0xbfffee00, bufsize=30, prompt=405319004, dont_downcase_last=0,
    can_return_switch_frame=1, fix_current_buffer=1) at keyboard.c:8015
#3  0x080dd2b4 in command_loop_1 () at keyboard.c:1440
#4  0x0813733a in internal_condition_case (bfun=0x80dd0e0 <command_loop_1>, handlers=405415348,
    hfun=0x80dcc80 <cmd_error>) at eval.c:1267
#5  0x080dcf9d in command_loop_2 () at keyboard.c:1245
#6  0x08136ea9 in internal_catch (tag=405525148, func=0x80dcf70 <command_loop_2>, arg=405319004) at eval.c:1030
#7  0x080dcf47 in command_loop () at keyboard.c:1224
#8  0x080dca0e in recursive_edit_1 () at keyboard.c:950
#9  0x080dcb42 in Frecursive_edit () at keyboard.c:1006
#10 0x080db38b in main (argc=3, argv=0xbffff484, envp=0xbffff494) at emacs.c:1547

(gdb) xbacktrace

(gdb) p position
$1 = 17566287

(gdb) p current_buffer[0]
$3 = {
  size = 537002092, 
  next = 0x8e7cbb8, 
  own_text = {
    beg = 0x41116008 "BABYL OPTIONS: -*- rmail -*-\nVersion: 5\nLabels:\nNote:   This is the header of an rmail file.\nNote:   If you are seeing it in rmail,\nNote:    it means the file has no messages in it.\n\037\f\n1,,\nDate: 1 Jan"..., 
    gpt = 970, 
    z = 981, 
    gpt_byte = 970, 
    z_byte = 981, 
    gap_size = 17571308, 
    modiff = 3, 
    save_modiff = 0, 
    overlay_modiff = 1, 
    beg_unchanged = -1, 
    end_unchanged = 0, 
    unchanged_modified = 1, 
    overlay_unchanged_modified = 1, 
    intervals = 0x828bd70, 
    markers = 677474904
  }, 
  text = 0x914edf0, 
  pt = 17566287, 
  pt_byte = 17566287, 
  begv = 1, 
  begv_byte = 1, 
  zv = 981, 
  zv_byte = 981, 
  base_buffer = 0x0, 
  local_flags = '\0' <repeats 13 times>, "\001\0\001\0\0\0\001\0\0\0\0\0\0\0\0P\356\024\t\0\0\0\0\a\0\0\01\001\0\0p\3229\t\260W", 
  modtime = 1036364301, 
  auto_save_modified = 2, 
  auto_save_failure_time = -1, 
  last_window_start = 1, 
  clip_changed = 1, 
  newline_cache = 0x0, 
  width_run_cache = 0x0, 
  prevent_redisplay_optimizations_p = 1, 
  undo_list = 405319004, 
  name = 957615556, 
  filename = 958398396, 
  directory = 952295716, 
  backed_up = 405319004, 
  save_length = 17566288, 
  auto_save_file_name = 405319004, 
---Type <return> to continue, or q <return> to quit---
  read_only = 405319052, 
  mark = 682055496, 
  local_var_alist = 1479512436, 
  major_mode = 406061884, 
  mode_name = 944593516, 
  mode_line_format = 1479455276, 
  header_line_format = 405319004, 
  keymap = 1480516916, 
  abbrev_table = 1212524312, 
  syntax_table = 1212524560, 
  category_table = 1210667592, 
  case_fold_search = 405319052, 
  tab_width = 8, 
  fill_column = 72, 
  left_margin = 0, 
  auto_fill_function = 405319004, 
  buffer_file_type = 405319004, 
  downcase_table = 1210669688, 
  upcase_table = 1211642584, 
  case_canon_table = 1211834432, 
  case_eqv_table = 1211849408, 
  truncate_lines = 405319004, 
  ctl_arrow = 405319052, 
  direction_reversed = 405319004, 
  selective_display = 405319004, 
  selective_display_ellipses = 405319052, 
  minor_modes = 405319004, 
  overwrite_mode = 405319004, 
  abbrev_mode = 405319004, 
  display_table = 405319004, 
  mark_active = 405319004, 
  overlays_before = 405319004, 
  overlays_after = 405319004, 
  overlay_center = 17566289, 
  enable_multibyte_characters = 405319004, 
  buffer_file_coding_system = 405319004, 
  file_format = 405319004, 
  cache_long_line_scans = 405319004, 
  width_table = 405319004, 
  pt_marker = 405319004, 
  begv_marker = 405319004, 
  zv_marker = 405319004, 
  point_before_scroll = 405319004, 
  file_truename = 952295732, 
  invisibility_spec = 405319052, 
  last_selected_window = 1226800416, 
  display_count = 1, 
---Type <return> to continue, or q <return> to quit---
  left_margin_width = 0, 
  right_margin_width = 0, 
  indicate_empty_lines = 405319052, 
  display_time = 1483133916, 
  scroll_up_aggressively = 405319004, 
  scroll_down_aggressively = 405319004, 
  cursor_type = 405319052, 
  extra_line_spacing = 405319004
}

  parent reply	other threads:[~2002-11-05 15:50 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-11-03 23:36 crash in RC branch Francesco Potorti`
2002-11-04 17:50 ` Francesco Potorti`
2002-11-06  4:49   ` Richard Stallman
2002-11-06  6:41     ` Eli Zaretskii
2002-11-06 12:22       ` Francesco Potorti`
2002-11-07 14:45         ` Eli Zaretskii
2002-11-07 22:05           ` Francesco Potorti`
2002-11-09 21:30             ` Eli Zaretskii
2002-11-10  8:03               ` Francesco Potorti`
2002-11-10 14:09                 ` Eli Zaretskii
2002-11-07 15:07       ` Richard Stallman
2002-11-05 15:50 ` Francesco Potorti` [this message]
2002-11-07  4:49   ` Richard Stallman
2002-12-23 20:58 ` Richard Stallman
2002-12-23 22:10   ` Francesco Potorti`
2002-12-24  6:19     ` Eli Zaretskii
2002-12-25 21:52     ` Richard Stallman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=E1895yJ-0007Xa-00@pot.cnuce.cnr.it \
    --to=pot@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).