Subject: 23.0.60; hang, then crash

From: Markus Triska <[email-masked]>
Date: Fri, 04 Jul 2008 10:20:59 +0200

Emacs got stuck, so I stopped it and stepped through it in GDB. Then
it crashed. Here is the GDB session:

(gdb) r
Starting program: /Users/mt/emacs/src/emacs 
Reading symbols for shared libraries .. done
Reading symbols for shared libraries . done
^Z
Program received signal SIGTSTP, Stopped (user).
0x9001a1cc in select ()
(gdb) bt
#0  0x9001a1cc in select ()
#1  0x00180eb4 in select_wrapper (n=4, rfd=0x9001a1cc, wfd=0xbfffec8c, xfd=0x0, tmo=0xbfffef78) at process.c:4511
#2  0x00186edc in wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=-1, do_display=1, wait_for_cell=58721289, wait_proc=0x0, just_wait_proc=0) at process.c:4887
#3  0x000df679 in read_char (commandflag=1, nmaps=3, maps=0xbffff1d0, prev_event=58721289, used_mouse_menu=0xbffff2c8, end_time=0x0) at keyboard.c:4087
#4  0x000e16d2 in read_key_sequence (keybuf=0xbffff388, bufsize=30, prompt=58721289, dont_downcase_last=0, can_return_switch_frame=1, fix_current_buffer=1) at keyboard.c:9429
#5  0x000e3a9c in command_loop_1 () at keyboard.c:1651
#6  0x00142c1c in internal_condition_case (bfun=0xe387e <command_loop_1>, handlers=58760929, hfun=0xdc6d9 <cmd_error>) at eval.c:1511
#7  0x000d5830 in command_loop_2 () at keyboard.c:1367
#8  0x0014286e in internal_catch (tag=58757001, func=0xd57ec <command_loop_2>, arg=58721289) at eval.c:1247
#9  0x000d55d2 in command_loop () at keyboard.c:1346
#10 0x000d568b in recursive_edit_1 () at keyboard.c:955
#11 0x000d57d3 in Frecursive_edit () at keyboard.c:1017
#12 0x000d4813 in main (argc=1, argv=0xbffff7b8) at emacs.c:1762
(gdb) bt full
#0  0x9001a1cc in select ()
No symbol table info available.
#1  0x00180eb4 in select_wrapper (n=4, rfd=0x9001a1cc, wfd=0xbfffec8c, xfd=0x0, tmo=0xbfffef78) at process.c:4511
        xfd = (fd_set *) 0x0
        tmo = (struct timeval *) 0x0
#2  0x00186edc in wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=-1, do_display=1, wait_for_cell=58721289, wait_proc=0x0, just_wait_proc=0) at process.c:4887
        timeout_reduced_for_timers = 1
        channel = 0
        nfds = -1
        Available = {
  fds_bits = {5384, 0 <repeats 31 times>}
}
        Connecting = {
  fds_bits = {0 <repeats 32 times>}
}
        check_connect = 0
        check_delay = 1
        no_avail = 1
        xerrno = 0
        proc = 1
        timeout = {
  tv_sec = 0, 
  tv_usec = 498796
}
        end_time = {
  tv_sec = 0, 
  tv_usec = 0
}
        wait_channel = -1
        got_some_input = 0
#3  0x000df679 in read_char (commandflag=1, nmaps=3, maps=0xbffff1d0, prev_event=58721289, used_mouse_menu=0xbffff2c8, end_time=0x0) at keyboard.c:4087
        c = 4
        obj = 58748777
        kb = (KBOARD *) 0x1
        c = 58721289
        count = 205
        jmpcount = 2
        local_getcjmp = {895, 0, 8096, 912217, 0, 1249230, 3289872, 3284528, -1073745528, -1073746000, 44826655, 658, 914156, 58982423, 31, 31, 0, 1245239}
        save_jump = {0 <repeats 18 times>}
        key_already_recorded = 0
        tem = 4
        save = 3284528
        previous_echo_area_message = 58721289
        also_record = 58721289
        reread = 0
        polling_stopped_here = 0
        orig_kboard = (struct kboard *) 0x21324f0
#4  0x000e16d2 in read_key_sequence (keybuf=0xbffff388, bufsize=30, prompt=58721289, dont_downcase_last=0, can_return_switch_frame=1, fix_current_buffer=1) at keyboard.c:9429
        interrupted_kboard = (KBOARD *) 0x21324f0
        used_mouse_menu = 0
        echo_local_start = 0
        last_real_key_start = 0
        keys_local_start = 0
        local_first_binding = 0
        from_string = 58721289
        count = 2
        t = 0
        echo_start = 0
        keys_start = 0
        nmaps = 3
        nmaps_allocated = 3
        defs = (Lisp_Object * volatile) 0xbffff1b0
        submaps = (Lisp_Object * volatile) 0xbffff1d0
        orig_local_map = 58721289
        orig_keymap = 58721289
        localized_local_map = 0
        first_binding = 0
        first_unbound = 31
        mock_input = 0
        fkey = {
  parent = 40036973, 
  map = 40036973, 
  start = 0, 
  end = 0
}
        keytran = {
  parent = 33947517, 
  map = 33947517, 
  start = 0, 
  end = 0
}
        indec = {
  parent = 40036981, 
  map = 40036981, 
  start = 0, 
  end = 0
}
        shift_translated = 0
        delayed_switch_frame = 58721289
        original_uppercase = 3062880
        original_uppercase_position = -1
        starting_buffer = (struct buffer *) 0x2ac8d60
        fake_prefixed_keys = 58721289
#5  0x000e3a9c in command_loop_1 () at keyboard.c:1651
        cmd = 3284528
        lose = 3284528
        nonundocount = 0
        keybuf = {192, 152, 3307184, 58721289, -1073744872, 903096, 40884677, -1073744946, -1073744904, -1879037169, 92274892, 152, -1073744946, 58721289, 100663439, 1, 43, -1879036413, 51396120, 58721337, 51385976, -1881082098, 5625428, 0, -1073744900, -1073745088, 0, 3342336, 58721289, 67060025}
        i = 2
        prev_modiff = 1300
        prev_buffer = (struct buffer *) 0x2ac8d60
        already_adjusted = 0
#6  0x00142c1c in internal_condition_case (bfun=0xe387e <command_loop_1>, handlers=58760929, hfun=0xdc6d9 <cmd_error>) at eval.c:1511
        val = -1878941236
        c = {
  tag = 58721289, 
  val = 58721289, 
  next = 0xbffff53c, 
  gcpro = 0x0, 
  jmp = {895, 17831856, 8096, 1321771, 58721289, 58721289, 3297712, 3284528, -1073744680, -1073744864, 31, 658, 1321920, 1507351, 3276831, 3276831, -1073807360, -1073807305}, 
  backlist = 0x0, 
  handlerlist = 0x0, 
  lisp_eval_depth = 0, 
  pdlcount = 2, 
  poll_suppress_count = 1, 
  interrupt_input_blocked = 0, 
  byte_stack = 0x0
}
        h = {
  handler = 58760929, 
  var = 58721289, 
  chosen_clause = 58721337, 
  tag = 0xbffff438, 
  next = 0x0
}
#7  0x000d5830 in command_loop_2 () at keyboard.c:1367
        val = 4
#8  0x0014286e in internal_catch (tag=58757001, func=0xd57ec <command_loop_2>, arg=58721289) at eval.c:1247
        c = {
  tag = 58757001, 
  val = 58721289, 
  next = 0x0, 
  gcpro = 0x0, 
  jmp = {895, 0, 8096, 1320914, 1, 20367, 3306688, 3284528, -1073744456, -1073744608, 58851359, 658, 1321057, 58851351, 58851359, 58720287, 51380224, 55}, 
  backlist = 0x0, 
  handlerlist = 0x0, 
  lisp_eval_depth = 0, 
  pdlcount = 2, 
  poll_suppress_count = 1, 
  interrupt_input_blocked = 0, 
  byte_stack = 0x0
}
        tag = 4
#9  0x000d55d2 in command_loop () at keyboard.c:1346
        val = 4
#10 0x000d568b in recursive_edit_1 () at keyboard.c:955
        val = 0
#11 0x000d57d3 in Frecursive_edit () at keyboard.c:1017
        buffer = 58721289
#12 0x000d4813 in main (argc=1, argv=0xbffff7b8) at emacs.c:1762
        dummy = -1881117246
        stack_bottom_variable = 0 '\0'
        do_initial_setlocale = 1
        skip_args = 0
        rlim = {
  rlim_cur = 8388608, 
  rlim_max = 67108864
}
        no_loadup = 0
        junk = 0x0
(gdb) step
Single stepping until exit from function select, 
which has no line number information.
0x90110760 in cerror ()
(gdb) 
Single stepping until exit from function cerror, 
which has no line number information.
0x90001715 in cthread_set_errno_self ()
(gdb) 
Single stepping until exit from function cthread_set_errno_self, 
which has no line number information.
0x9016a970 in __i686.get_pc_thunk.bx ()
(gdb) 
Single stepping until exit from function __i686.get_pc_thunk.bx, 
which has no line number information.
0x90001723 in cthread_set_errno_self ()
(gdb) 
Single stepping until exit from function cthread_set_errno_self, 
which has no line number information.

0x9011078b in cerror ()
(gdb) 
Single stepping until exit from function cerror, 
which has no line number information.
select_wrapper (n=-1, rfd=0xffffffff, wfd=0x90001778, xfd=0x0, tmo=0xbfffef78) at process.c:4512
4512    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=-1, do_display=1, wait_for_cell=58721289, wait_proc=0x0, just_wait_proc=0) at process.c:4898
4898          xerrno = errno;
(gdb) 
4901          clear_waiting_for_input ();
(gdb) 
clear_waiting_for_input () at keyboard.c:10987
10987     waiting_for_input = 0;
(gdb) 
10988     input_available_clear_time = 0;
(gdb) 
10989   }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=-1, do_display=1, wait_for_cell=58721289, wait_proc=0x0, just_wait_proc=0) at process.c:4904
4904          do_pending_window_change (0);
(gdb) 
do_pending_window_change (safe=0) at dispnew.c:6237
6237      if (redisplaying_p && !safe)
(gdb) 
6240      while (delayed_size_change)
(gdb) 
6255    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=-1, do_display=1, wait_for_cell=58721289, wait_proc=0x0, just_wait_proc=0) at process.c:4906
4906          if (time_limit && nfds == 0 && ! timeout_reduced_for_timers)
(gdb) 
4909          if (nfds < 0)
(gdb) 
4911              if (xerrno == EINTR)
(gdb) 
4934              FD_ZERO (&Available);
(gdb) 
4970          if (read_kbd != 0)
(gdb) 
4972              int old_timers_run = timers_run;
(gdb) 
4973              struct buffer *old_buffer = current_buffer;
(gdb) 
4974              Lisp_Object old_window = selected_window;
(gdb) 
4977              if (detect_input_pending_run_timers (do_display))
(gdb) 
detect_input_pending_run_timers (do_display=1) at keyboard.c:10617
10617     int old_timers_run = timers_run;
(gdb) 
10619     if (!input_pending)
(gdb) 
10620       get_input_pending (&input_pending, READABLE_EVENTS_DO_TIMERS_NOW);
(gdb) 

get_input_pending (addr=0x3220c0, flags=1) at keyboard.c:6950
6950      *addr = (!NILP (Vquit_flag) || readable_events (flags));
(gdb) 
readable_events (flags=1) at keyboard.c:3645
3645      if (flags & READABLE_EVENTS_DO_TIMERS_NOW)
(gdb) 
3646        timer_check (1);
(gdb) 
timer_check (do_it_now=1) at keyboard.c:4505
4505      timers = Vtimer_list;
(gdb) 
4507      if (! EMACS_TIME_NEG_P (timer_idleness_start_time))
(gdb) 
4508        idle_timers = Vtimer_idle_list;
(gdb) 
4515      while (CONSP (pending_funcalls))
(gdb) 
4522      if (CONSP (timers) || CONSP (idle_timers))
(gdb) 
4524          EMACS_GET_TIME (now);
(gdb) 

4525          if (! EMACS_TIME_NEG_P (timer_idleness_start_time))
(gdb) 
4526            EMACS_SUB_TIME (idleness_now, now, timer_idleness_start_time);
(gdb) 
4529      while (CONSP (timers) || CONSP (idle_timers))
(gdb) 
4532          Lisp_Object timer = Qnil, idle_timer = Qnil;
(gdb) 
4537          if (!NILP (timers))
(gdb) 
4539              timer = XCAR (timers);
(gdb) 
4540              if (!VECTORP (timer) || XVECTOR (timer)->size != 8)
(gdb) 
4545              vector = XVECTOR (timer)->contents;
(gdb) 
4547              if (!INTEGERP (vector[1]) || !INTEGERP (vector[2])
(gdb) 
4555          if (!NILP (idle_timers))
(gdb) 
4557              timer = XCAR (idle_timers);
(gdb) 
4558              if (!VECTORP (timer) || XVECTOR (timer)->size != 8)
(gdb) 
4563              vector = XVECTOR (timer)->contents;
(gdb) 
4565              if (!INTEGERP (vector[1]) || !INTEGERP (vector[2])
(gdb) 
4569                  idle_timers = XCDR (idle_timers);
(gdb) 
4529      while (CONSP (timers) || CONSP (idle_timers))
(gdb) 
4532          Lisp_Object timer = Qnil, idle_timer = Qnil;
(gdb) 
4537          if (!NILP (timers))
(gdb) 
4539              timer = XCAR (timers);
(gdb) 
4540              if (!VECTORP (timer) || XVECTOR (timer)->size != 8)
(gdb) 
4545              vector = XVECTOR (timer)->contents;
(gdb) 
4547              if (!INTEGERP (vector[1]) || !INTEGERP (vector[2])
(gdb) 
4555          if (!NILP (idle_timers))
(gdb) 
4557              timer = XCAR (idle_timers);
(gdb) 
4558              if (!VECTORP (timer) || XVECTOR (timer)->size != 8)
(gdb) 
4563              vector = XVECTOR (timer)->contents;
(gdb) 
4565              if (!INTEGERP (vector[1]) || !INTEGERP (vector[2])
(gdb) 
4569                  idle_timers = XCDR (idle_timers);
(gdb) 
4529      while (CONSP (timers) || CONSP (idle_timers))
(gdb) 
4532          Lisp_Object timer = Qnil, idle_timer = Qnil;
(gdb) 
4537          if (!NILP (timers))
(gdb) 
4539              timer = XCAR (timers);
(gdb) 
4540              if (!VECTORP (timer) || XVECTOR (timer)->size != 8)
(gdb) 
4545              vector = XVECTOR (timer)->contents;
(gdb) 
4547              if (!INTEGERP (vector[1]) || !INTEGERP (vector[2])
(gdb) 
4555          if (!NILP (idle_timers))
(gdb) 
4557              timer = XCAR (idle_timers);
(gdb) 
4558              if (!VECTORP (timer) || XVECTOR (timer)->size != 8)
(gdb) 
4563              vector = XVECTOR (timer)->contents;
(gdb) 
4565              if (!INTEGERP (vector[1]) || !INTEGERP (vector[2])
(gdb) 
4569                  idle_timers = XCDR (idle_timers);
(gdb) 
4529      while (CONSP (timers) || CONSP (idle_timers))
(gdb) 
4532          Lisp_Object timer = Qnil, idle_timer = Qnil;
(gdb) 
4537          if (!NILP (timers))
(gdb) 
4539              timer = XCAR (timers);
(gdb) 
4540              if (!VECTORP (timer) || XVECTOR (timer)->size != 8)
(gdb) 
4545              vector = XVECTOR (timer)->contents;
(gdb) 
4547              if (!INTEGERP (vector[1]) || !INTEGERP (vector[2])
(gdb) 
4555          if (!NILP (idle_timers))
(gdb) 
4557              timer = XCAR (idle_timers);
(gdb) 
4558              if (!VECTORP (timer) || XVECTOR (timer)->size != 8)
(gdb) 
4563              vector = XVECTOR (timer)->contents;
(gdb) 
4565              if (!INTEGERP (vector[1]) || !INTEGERP (vector[2])
(gdb) 
4569                  idle_timers = XCDR (idle_timers);
(gdb) 
4529      while (CONSP (timers) || CONSP (idle_timers))
(gdb) 
4532          Lisp_Object timer = Qnil, idle_timer = Qnil;
(gdb) 
4537          if (!NILP (timers))
(gdb) 
4539              timer = XCAR (timers);
(gdb) 
4540              if (!VECTORP (timer) || XVECTOR (timer)->size != 8)
(gdb) 
4545              vector = XVECTOR (timer)->contents;
(gdb) 
4547              if (!INTEGERP (vector[1]) || !INTEGERP (vector[2])
(gdb) 
4555          if (!NILP (idle_timers))
(gdb) 
4557              timer = XCAR (idle_timers);
(gdb) 
4558              if (!VECTORP (timer) || XVECTOR (timer)->size != 8)
(gdb) 
4563              vector = XVECTOR (timer)->contents;
(gdb) 
4565              if (!INTEGERP (vector[1]) || !INTEGERP (vector[2])
(gdb) 
4569                  idle_timers = XCDR (idle_timers);
(gdb) 
4529      while (CONSP (timers) || CONSP (idle_timers))
(gdb) 
4532          Lisp_Object timer = Qnil, idle_timer = Qnil;
(gdb) 
4537          if (!NILP (timers))
(gdb) 
4539              timer = XCAR (timers);
(gdb) 
4540              if (!VECTORP (timer) || XVECTOR (timer)->size != 8)
(gdb) 
4547              if (!INTEGERP (vector[1]) || !INTEGERP (vector[2])
(gdb) 
4555          if (!NILP (idle_timers))
(gdb) 
4578          if (!NILP (timers))
(gdb) 
4580              timer = XCAR (timers);
(gdb) 
4581              vector = XVECTOR (timer)->contents;
(gdb) 
4585              EMACS_SUB_TIME (timer_difference, timer_time, now);
(gdb) 
4590          if (!NILP (idle_timers))
(gdb) 
4604          if (! NILP (timers) && ! NILP (idle_timers))
(gdb) 
4624              timers = XCDR (timers);
(gdb) 
4633          vector = XVECTOR (chosen_timer)->contents;
(gdb) 
4636          if (EMACS_TIME_NEG_P (difference)
(gdb) 
4640              if (NILP (vector[0]))
(gdb) 
4642                  int count = SPECPDL_INDEX ();
(gdb) 
4643                  Lisp_Object old_deactivate_mark = Vdeactivate_mark;
(gdb) 
4652                  vector[0] = Qt;
(gdb) 
4654                  specbind (Qinhibit_quit, Qt);
(gdb) 

specbind (symbol=58808497, value=58721337) at eval.c:3286

3286      CHECK_SYMBOL (symbol);
(gdb) 
3287      if (specpdl_ptr == specpdl + specpdl_size)
(gdb) 
3292      valcontents = SYMBOL_VALUE (symbol);
(gdb) 
3293      if (!MISCP (valcontents) && !SYMBOL_CONSTANT_P (symbol))
(gdb) 
3303          Lisp_Object ovalue = find_symbol_value (symbol);
(gdb) 
find_symbol_value (symbol=58808497) at data.c:1097
1097      CHECK_SYMBOL (symbol);
(gdb) 
1098      valcontents = SYMBOL_VALUE (symbol);
(gdb) 
1100      if (BUFFER_LOCAL_VALUEP (valcontents))
(gdb) 
1103      return do_symval_forwarding (valcontents);
(gdb) 
1104    }
(gdb) 
find_symbol_value (symbol=58808497) at data.c:1103
1103      return do_symval_forwarding (valcontents);
(gdb) 
do_symval_forwarding (valcontents=0) at data.c:858
858     {
(gdb) 
0x001b6d94 in __i686.get_pc_thunk.bx ()
(gdb) 
Single stepping until exit from function __i686.get_pc_thunk.bx, 
which has no line number information.
do_symval_forwarding (valcontents=58807002) at data.c:860
860       if (MISCP (valcontents))
(gdb) 
861         switch (XMISCTYPE (valcontents))
(gdb) 
871             return *XOBJFWD (valcontents)->objvar;
(gdb) 
893     }
(gdb) 
specbind (symbol=58808497, value=58721337) at eval.c:3304
3304          specpdl_ptr->func = 0;
(gdb) 
3305          specpdl_ptr->old_value = ovalue;
(gdb) 
3307          valcontents = XSYMBOL (symbol)->value;
(gdb) 
3309          if (BUFFER_LOCAL_VALUEP (valcontents)
(gdb) 
3345            specpdl_ptr->symbol = symbol;
(gdb) 
3347          specpdl_ptr++;
(gdb) 
3355          set_internal (symbol, value, 0, 1);
(gdb) 

set_internal (symbol=58808497, newval=58721337, buf=0x0, bindflag=1) at data.c:1166
1166      int voide = EQ (newval, Qunbound);
(gdb) 
1170      if (buf == 0)
(gdb) 
1171        buf = current_buffer;
(gdb) 
1174      if (NILP (buf->name))
(gdb) 
1177      CHECK_SYMBOL (symbol);
(gdb) 
1178      if (SYMBOL_CONSTANT_P (symbol)
(gdb) 
1183      innercontents = valcontents = SYMBOL_VALUE (symbol);
(gdb) 
1185      if (BUFFER_OBJFWDP (valcontents))
(gdb) 
1194      else if (BUFFER_LOCAL_VALUEP (valcontents))
(gdb) 
1276          XSETCDR (XCAR (XBUFFER_LOCAL_VALUE (valcontents)->cdr), newval);
(gdb) 
1281      if (voide)
(gdb) 
1284        store_symval_forwarding (symbol, innercontents, newval, buf);
(gdb) 
store_symval_forwarding (symbol=58808497, valcontents=58807002, newval=58721337, buf=0x2ac8d60) at data.c:909
909       switch (SWITCH_ENUM_CAST (XTYPE (valcontents)))
(gdb) 
912           switch (XMISCTYPE (valcontents))
(gdb) 
929               *XOBJFWD (valcontents)->objvar = newval;
(gdb) 
935               if (XOBJFWD (valcontents)->objvar > (Lisp_Object *) &buffer_defaults
(gdb) 
998     }
(gdb) 
set_internal (symbol=58808497, newval=58721337, buf=0x2ac8d60, bindflag=1) at data.c:1287
1287    }
(gdb) 
specbind (symbol=58808497, value=58721337) at eval.c:3357
3357    }
(gdb) 
timer_check (do_it_now=1) at keyboard.c:4656
4656                  call1 (Qtimer_event_handler, chosen_timer);
(gdb) 

call1 (fn=58751297, arg1=44500868) at eval.c:2827
2827      RETURN_UNGCPRO (Ffuncall (2, &fn));
(gdb) 

Ffuncall (nargs=2, args=0xbfffeb90) at eval.c:2964
2964      int numargs = nargs - 1;
(gdb) 
2971      QUIT;
(gdb) 
handle_async_input () at keyboard.c:7308
7308      interrupt_input_pending = 0;
(gdb) 
7313          nread = read_avail_input (1);
(gdb) 

read_avail_input (expected=1) at keyboard.c:7468
7468      for (p = user_signals; p; p = p->next)
(gdb) 
7469        if (p->npending > 0)
(gdb) 
7468      for (p = user_signals; p; p = p->next)
(gdb) 
7469        if (p->npending > 0)
(gdb) 
7468      for (p = user_signals; p; p = p->next)
(gdb) 
7068      if (store_user_signal_events ())
(gdb) 
7072      t = terminal_list;
(gdb) 
7073      while (t)
(gdb) 
7075          struct terminal *next = t->next_terminal;
(gdb) 
7077          if (t->read_socket_hook)
(gdb) 
7082              EVENT_INIT (hold_quit);
(gdb) 
7083              hold_quit.kind = NO_EVENT;
(gdb) 
7086              while (nr = (*t->read_socket_hook) (t, expected, &hold_quit), nr > 0)
(gdb) 
XTread_socket (terminal=0x2132240, expected=1, hold_quit=0xbfffeaa4) at xterm.c:7119

7119      if (interrupt_input_blocked)
(gdb) 
7125      interrupt_input_pending = 0;
(gdb) 
7126      BLOCK_INPUT;
(gdb) 
7129      input_signal_count++;
(gdb) 
7131      ++handling_signal;
(gdb) 
7135      if (terminal->id == 1 && x_session_have_connection ())
(gdb) 
x_session_have_connection () at xsmfns.c:144
144     {
(gdb) 
146     }
(gdb) 
XTread_socket (terminal=0x2132240, expected=1, hold_quit=0xbfffeaa4) at xterm.c:7146
7146          UNBLOCK_INPUT;
(gdb) 
7151      if (terminal->display_info.x == XTread_socket_fake_io_error)
(gdb) 
7222      while (gtk_events_pending ())
(gdb) 
7224          current_count = count;
(gdb) 
7225          current_hold_quit = hold_quit;
(gdb) 
7227          gtk_main_iteration ();
(gdb) 
7229          count = current_count;
(gdb) 
7230          current_count = -1;
(gdb) 
7231          current_hold_quit = 0;
(gdb) c
Continuing.
^Z
Program received signal SIGTSTP, Stopped (user).
0x9001a1cc in select ()
(gdb) step
Single stepping until exit from function select, 
which has no line number information.
0x90110760 in cerror ()
(gdb) 
Single stepping until exit from function cerror, 
which has no line number information.
0x90001715 in cthread_set_errno_self ()
(gdb) 
Single stepping until exit from function cthread_set_errno_self, 
which has no line number information.
0x9016a970 in __i686.get_pc_thunk.bx ()
(gdb) 
Single stepping until exit from function __i686.get_pc_thunk.bx, 
which has no line number information.
0x90001723 in cthread_set_errno_self ()
(gdb) 
Single stepping until exit from function cthread_set_errno_self, 
which has no line number information.
0x9011078b in cerror ()
(gdb) 
Single stepping until exit from function cerror, 
which has no line number information.
select_wrapper (n=-1, rfd=0xffffffff, wfd=0x90001778, xfd=0x0, tmo=0xbfffef78) at process.c:4512
4512    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=-1, do_display=1, wait_for_cell=58721289, wait_proc=0x0, just_wait_proc=0) at process.c:4898
4898          xerrno = errno;
(gdb) 
4901          clear_waiting_for_input ();
(gdb) 
clear_waiting_for_input () at keyboard.c:10987
10987     waiting_for_input = 0;
(gdb) 
10988     input_available_clear_time = 0;
(gdb) 
10989   }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=-1, do_display=1, wait_for_cell=58721289, wait_proc=0x0, just_wait_proc=0) at process.c:4904
4904          do_pending_window_change (0);
(gdb) 
do_pending_window_change (safe=0) at dispnew.c:6237
6237      if (redisplaying_p && !safe)
(gdb) 
6240      while (delayed_size_change)
(gdb) 
6255    }
(gdb) 
wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=-1, do_display=1, wait_for_cell=58721289, wait_proc=0x0, just_wait_proc=0) at process.c:4906
4906          if (time_limit && nfds == 0 && ! timeout_reduced_for_timers)
(gdb) 
4909          if (nfds < 0)
(gdb) 
4911              if (xerrno == EINTR)
(gdb) 
4934              FD_ZERO (&Available);
(gdb) 
4970          if (read_kbd != 0)
(gdb) 
4972              int old_timers_run = timers_run;
(gdb) 
4973              struct buffer *old_buffer = current_buffer;
(gdb) 
4974              Lisp_Object old_window = selected_window;
(gdb) 
4977              if (detect_input_pending_run_timers (do_display))
(gdb) 

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000001
0x000ddd6c in detect_input_pending_run_timers (do_display=1) at keyboard.c:10617
10617     int old_timers_run = timers_run;
(gdb) bt full
#0  0x000ddd6c in detect_input_pending_run_timers (do_display=1) at keyboard.c:10617
        old_timers_run = 52613
#1  0x00187347 in wait_reading_process_output (time_limit=0, microsecs=0, read_kbd=-1, do_display=1, wait_for_cell=58721289, wait_proc=0x0, just_wait_proc=0) at process.c:4977
        old_timers_run = 52613
        old_buffer = (struct buffer *) 0x2ac8d60
        old_window = 44393508
        leave = 1
        timeout_reduced_for_timers = 1
        channel = 0
        nfds = -1
        Available = {
  fds_bits = {0 <repeats 32 times>}
}
        Connecting = {
  fds_bits = {0 <repeats 32 times>}
}
        check_connect = 0
        check_delay = 1
        no_avail = 1
        xerrno = 0
        proc = 1
        timeout = {
  tv_sec = 0, 
  tv_usec = 498655
}
        end_time = {
  tv_sec = 0, 
  tv_usec = 0
}
        wait_channel = -1
        got_some_input = 0
#2  0x000df679 in read_char (commandflag=1, nmaps=3, maps=0xbffff1d0, prev_event=58721289, used_mouse_menu=0xbffff2c8, end_time=0x0) at keyboard.c:4087
        c = 44393508
        obj = 58748777
        kb = (KBOARD *) 0x1
        c = 58721289
        count = 205
        jmpcount = 2
        local_getcjmp = {895, 0, 8096, 912217, 0, 1249230, 3289872, 3284528, -1073745528, -1073746000, 44826655, 658, 914156, 58982423, 31, 31, 0, 1245239}
        save_jump = {0 <repeats 18 times>}
        key_already_recorded = 0
        tem = 44393508
        save = 3284528
        previous_echo_area_message = 58721289
        also_record = 58721289
        reread = 0
        polling_stopped_here = 0
        orig_kboard = (struct kboard *) 0x21324f0
#3  0x000e16d2 in read_key_sequence (keybuf=0xbffff388, bufsize=30, prompt=58721289, dont_downcase_last=0, can_return_switch_frame=1, fix_current_buffer=1) at keyboard.c:9429
        interrupted_kboard = (KBOARD *) 0x21324f0
        used_mouse_menu = 0
        echo_local_start = 0
        last_real_key_start = 0
        keys_local_start = 0
        local_first_binding = 0
        from_string = 58721289
        count = 2
        t = 0
        echo_start = 0
        keys_start = 0
        nmaps = 3
        nmaps_allocated = 3
        defs = (Lisp_Object * volatile) 0xbffff1b0
        submaps = (Lisp_Object * volatile) 0xbffff1d0
        orig_local_map = 58721289
        orig_keymap = 58721289
        localized_local_map = 0
        first_binding = 0
        first_unbound = 31
        mock_input = 0
        fkey = {
  parent = 40036973, 
  map = 40036973, 
  start = 0, 
  end = 0
}
        keytran = {
  parent = 33947517, 
  map = 33947517, 
  start = 0, 
  end = 0
}
        indec = {
  parent = 40036981, 
  map = 40036981, 
  start = 0, 
  end = 0
}
        shift_translated = 0
        delayed_switch_frame = 58721289
        original_uppercase = 3062880
        original_uppercase_position = -1
        starting_buffer = (struct buffer *) 0x2ac8d60
        fake_prefixed_keys = 58721289
#4  0x000e3a9c in command_loop_1 () at keyboard.c:1651
        cmd = 3284528
        lose = 3284528
        nonundocount = 0
        keybuf = {192, 152, 3307184, 58721289, -1073744872, 903096, 40884677, -1073744946, -1073744904, -1879037169, 92274892, 152, -1073744946, 58721289, 100663439, 1, 43, -1879036413, 51396120, 58721337, 51385976, -1881082098, 5625428, 0, -1073744900, -1073745088, 0, 3342336, 58721289, 67060025}
        i = 2
        prev_modiff = 1300
        prev_buffer = (struct buffer *) 0x2ac8d60
        already_adjusted = 0
#5  0x00142c1c in internal_condition_case (bfun=0xe387e <command_loop_1>, handlers=58760929, hfun=0xdc6d9 <cmd_error>) at eval.c:1511
        val = 0
        c = {
  tag = 58721289, 
  val = 58721289, 
  next = 0xbffff53c, 
  gcpro = 0x0, 
  jmp = {895, 17831856, 8096, 1321771, 58721289, 58721289, 3297712, 3284528, -1073744680, -1073744864, 31, 658, 1321920, 1507351, 3276831, 3276831, -1073807360, -1073807305}, 
  backlist = 0x0, 
  handlerlist = 0x0, 
  lisp_eval_depth = 0, 
  pdlcount = 2, 
  poll_suppress_count = 1, 
  interrupt_input_blocked = 0, 
  byte_stack = 0x0
}
        h = {
  handler = 58760929, 
  var = 58721289, 
  chosen_clause = 58721337, 
  tag = 0xbffff438, 
  next = 0x0
}
#6  0x000d5830 in command_loop_2 () at keyboard.c:1367
        val = 44393508
#7  0x0014286e in internal_catch (tag=58757001, func=0xd57ec <command_loop_2>, arg=58721289) at eval.c:1247
        c = {
  tag = 58757001, 
  val = 58721289, 
  next = 0x0, 
  gcpro = 0x0, 
  jmp = {895, 0, 8096, 1320914, 1, 20367, 3306688, 3284528, -1073744456, -1073744608, 58851359, 658, 1321057, 58851351, 58851359, 58720287, 51380224, 55}, 
  backlist = 0x0, 
  handlerlist = 0x0, 
  lisp_eval_depth = 0, 
  pdlcount = 2, 
  poll_suppress_count = 1, 
  interrupt_input_blocked = 0, 
  byte_stack = 0x0
}
        tag = 44393508
#8  0x000d55d2 in command_loop () at keyboard.c:1346
        val = 44393508
#9  0x000d568b in recursive_edit_1 () at keyboard.c:955
        val = 0
#10 0x000d57d3 in Frecursive_edit () at keyboard.c:1017
        buffer = 58721289
#11 0x000d4813 in main (argc=1, argv=0xbffff7b8) at emacs.c:1762
        dummy = -1881117246
        stack_bottom_variable = 0 '\0'
        do_initial_setlocale = 1
        skip_args = 0
        rlim = {
  rlim_cur = 8388608, 
  rlim_max = 67108864
}
        no_loadup = 0
        junk = 0x0

In GNU Emacs 23.0.60.1 (i386-apple-darwin8.11.1, GTK+ Version 2.12.9)
 of 2008-06-29 on mt-computer.local
Windowing system distributor `The XFree86 Project, Inc', version 11.0.40400000
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: nil
  value of $XMODIFIERS: nil
  locale-coding-system: nil
  default-enable-multibyte-characters: t