bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#8162: 23.3; Crash with invalid default-process-coding-system value


From: YAMAMOTO Mitsuharu
Subject: bug#8162: 23.3; Crash with invalid default-process-coding-system value
Date: Fri, 04 Mar 2011 09:33:57 +0900
User-agent: Wanderlust/2.14.0 (Africa) SEMI/1.14.6 (Maruoka) FLIM/1.14.8 (Shijō) APEL/10.6 Emacs/22.3 (sparc-sun-solaris2.8) MULE/5.0 (SAKAKI)

>>>>> On Thu, 03 Mar 2011 08:14:48 -0500, Eli Zaretskii <eliz@gnu.org> said:

>>> set-process-coding-system signals an error when it sees the
>>> `dummy' part, but comint.el does nothing about that.  It should
>>> kill the shell buffer it just created, IMO.
>> 
>> But, at least, a process associated with the shell buffer must be
>> killed when an error occurs in Fstart_process.

> Killing the buffer will also kill the process, won't it?

Without Handa-san's patch, killing the *shell*<2> buffer caused
another crash.

  1. $ emacs -Q
  2. M-x shell RET
  3. M-: (setq default-process-coding-system '(dummy . utf-8-unix)) RET
  4. C-u M-x shell RET RET
  5. C-x k RET yes RET

(2-4 can be replaced with:

  2'. (setq explicit-shell-file-name "/bin/csh") C-j
  3'. (setq default-process-coding-system '(dummy . utf-8-unix)) C-j
  4'. M-x shell RET
)

                                     YAMAMOTO Mitsuharu
                                mituharu@math.s.chiba-u.ac.jp

(gdb) bt full
#0  0x0012d422 in __kernel_vsyscall ()
No symbol table info available.
#1  0x00cd2926 in kill () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#2  0x0822ae30 in process_send_signal (process=144646877, signo=1, 
    current_group=138746354, nomsg=1)
    at /home/mituharu/src/bzr/emacs/emacs-23/src/process.c:6325
        proc = 144646877
        p = 0x0
        gid = 0
        no_pgrp = 0
#3  0x0822baba in kill_buffer_processes (buffer=144655189)
    at /home/mituharu/src/bzr/emacs/emacs-23/src/process.c:6704
        tail = 143990254
        proc = 144646877
#4  0x0817aa9a in Fkill_buffer (buffer_or_name=142030913)
    at /home/mituharu/src/bzr/emacs/emacs-23/src/buffer.c:1541
        buffer = 144655189
        b = 0x89f4350
        tem = 138772069
        m = 0x8457e65
        gcpro1 = {
          next = 0x87d0ce5, 
          var = 0x7, 
          nvars = 0
        }
#5  0x081dd047 in Ffuncall (nargs=2, args=0xbfffe8e0)
    at /home/mituharu/src/bzr/emacs/emacs-23/src/eval.c:3031
        fun = 136797749
        original_fun = 138864746
        funcar = 135633819
        numargs = 1
        lisp_numargs = -1073747848
        val = -1073745852
        backtrace = {
          next = 0xbfffeb5c, 
          function = 0xbfffe8e0, 
          args = 0xbfffe8e4, 
          nargs = 1, 
          evalargs = 0 '\000', 
          debug_on_exit = 0 '\000'
        }
        internal_args = 0xbfffe8e4
        i = 2
#6  0x081d889d in Fcall_interactively (function=138864746, 
    record_flag=138746354, keys=138780461)
    at /home/mituharu/src/bzr/emacs/emacs-23/src/callint.c:869
        val = 0
        args = 0xbfffe8e0
        visargs = 0xbfffe8c0
        specs = 142037121
        filter_specs = 142037121
        teml = 138746354
        up_event = 138746354
        enable = 138746354
        speccount = 3
        next_event = 2
        prefix_arg = 138746354
        string = 0xbfffe900 "bKill buffer: "
        tem = 0x8269994 ""
        varies = 0xbfffe8a0
        i = 2
        j = 2
        count = 1
        foo = 0
        prompt1 = "Kill buffer: ", '\000' <repeats 86 times>
        tem1 = 0x0
        arg_from_tty = 1
        gcpro1 = {
          next = 0x84c619a, 
          var = 0x84519f2, 
          nvars = 138746354
        }
        gcpro2 = {
          next = 0x0, 
          var = 0x0, 
          nvars = 3
        }
        gcpro3 = {
          next = 0x0, 
          var = 0x0, 
          nvars = 2
        }
        gcpro4 = {
          next = 0x3, 
          var = 0x84519f2, 
          nvars = 2
        }
        gcpro5 = {
          next = 0x0, 
          var = 0xbfffe8a8, 
          nvars = 136173701
        }
        key_count = 2
        record_then_fail = 0
        save_this_command = 138864746
        save_last_command = 139904170
        save_this_original_command = 138864746
        save_real_this_command = 138864746
#7  0x081dd092 in Ffuncall (nargs=4, args=0xbfffebc0)
    at /home/mituharu/src/bzr/emacs/emacs-23/src/eval.c:3037
        fun = 138432677
        original_fun = 138866674
        funcar = 0
        numargs = 3
        lisp_numargs = 0
        val = 0
        backtrace = {
          next = 0x0, 
          function = 0xbfffebc0, 
          args = 0xbfffebc4, 
          nargs = 3, 
          evalargs = 0 '\000', 
          debug_on_exit = 0 '\000'
        }
        internal_args = 0xbfffebc4
        i = 136145913
#8  0x081dcc09 in call3 (fn=138866674, arg1=138864746, arg2=138746354, 
    arg3=138746354) at /home/mituharu/src/bzr/emacs/emacs-23/src/eval.c:2857
        ret_ungc_val = 136797749
        gcpro1 = {
          next = 0x85498be, 
          var = 0x8459282, 
          nvars = 4
        }
        args = {138866674, 138864746, 138746354, 138746354}
#9  0x08169279 in Fcommand_execute (cmd=138864746, record_flag=138746354, 
    keys=138746354, special=138746354)
    at /home/mituharu/src/bzr/emacs/emacs-23/src/keyboard.c:10562
        final = 136797749
        tem = 138746354
        prefixarg = 138746354
#10 0x0815b6d1 in command_loop_1 ()
    at /home/mituharu/src/bzr/emacs/emacs-23/src/keyboard.c:1906
        scount = 2
        cmd = 138864746
        lose = -1208090024
        keybuf = {96, 428, -1073746928, 136817849, 1, 138746354, 138746354, 
          136813641, 138838586, -1096495616, -1208090624, -1073807358, 
          -1073746760, 135634595, 143990150, 138746402, -1073746726, 
          138855394, -1073746644, 1150886, 0, 142413024, 0, -1073745120, 
          -1073746664, 135634150, 143990150, -1073746726, 0, 138746354}
        i = 2
        prev_modiff = 1
        prev_buffer = 0x89f4350
        already_adjusted = 0
#11 0x081daa0f in internal_condition_case (bfun=0x815a22f <command_loop_1>, 
    handlers=138784170, hfun=0x8159bed <cmd_error>)
    at /home/mituharu/src/bzr/emacs/emacs-23/src/eval.c:1492
        val = 138993790
        c = {
          tag = 138746354, 
          val = 138746354, 
          next = 0xbfffee58, 
          gcpro = 0x0, 
          jmp = {{
              __jmpbuf = {0, -1073745556, -1073745852, -1073746408, 453675397, 
                -545015062}, 
              __mask_was_saved = 0, 
              __saved_mask = {
                __val = {0, 0, 0, 3221220396, 13729485, 0, 13319968, 0, 
                  3221220880, 3221220808, 3221220820, 134547493, 1231096, 0, 
                  3086877272, 3221159938, 134546495, 134545765, 3086905992, 
                  1228788, 13285836, 37, 3221220588, 1150886, 138668800, 
                  138668928, 3221221124, 13303296, 3086906080, 2, 4294967295, 
                  1228788}
              }
            }}, 
          backlist = 0x0, 
          handlerlist = 0x0, 
          lisp_eval_depth = 0, 
          pdlcount = 2, 
          poll_suppress_count = 1, 
          interrupt_input_blocked = 0, 
          byte_stack = 0x0
        }
        h = {
          handler = 138784170, 
          var = 138746354, 
          chosen_clause = 138746402, 
          tag = 0xbfffed30, 
          next = 0x0
        }
#12 0x08159f85 in command_loop_2 ()
    at /home/mituharu/src/bzr/emacs/emacs-23/src/keyboard.c:1362
        val = 0
#13 0x081da51b in internal_catch (tag=138781242, 
    func=0x8159f60 <command_loop_2>, arg=138746354)
    at /home/mituharu/src/bzr/emacs/emacs-23/src/eval.c:1228
        c = {
          tag = 138781242, 
          val = 138746354, 
          next = 0x0, 
          gcpro = 0x0, 
          jmp = {{
              __jmpbuf = {-1073745120, -1073745556, -1073745852, -1073746136, 
                453790085, -543502102}, 
              __mask_was_saved = 0, 
              __saved_mask = {
                __val = {0 <repeats 16 times>, 13719982, 0, 0, 0, 138911483, 
                  3221221160, 136078979, 138913674, 138911483, 138746354, 
                  138772064, 141188884, 136754599, 14, 22, 192}
              }
            }}, 
          backlist = 0x0, 
          handlerlist = 0x0, 
          lisp_eval_depth = 0, 
          pdlcount = 2, 
          poll_suppress_count = 1, 
          interrupt_input_blocked = 0, 
          byte_stack = 0x0
        }
#14 0x08159f3e in command_loop ()
    at /home/mituharu/src/bzr/emacs/emacs-23/src/keyboard.c:1341
No locals.
#15 0x0815980c in recursive_edit_1 ()
    at /home/mituharu/src/bzr/emacs/emacs-23/src/keyboard.c:956
        count = 1
        val = -1073745992
#16 0x08159977 in Frecursive_edit ()
    at /home/mituharu/src/bzr/emacs/emacs-23/src/keyboard.c:1018
        count = 0
        buffer = 138746354
#17 0x08158155 in main (argc=2, argv=0xbffff3c4)
    at /home/mituharu/src/bzr/emacs/emacs-23/src/emacs.c:1833
        dummy = -1073745128
        stack_bottom_variable = 8 '\b'
        do_initial_setlocale = 1
        skip_args = 0
        rlim = {
          rlim_cur = 8388608, 
          rlim_max = 18446744073709551615
        }
        no_loadup = 0
        junk = 0x0
        dname_arg = 0x0

Lisp Backtrace:
"kill-buffer" (0xbfffe8e4)
"call-interactively" (0xbfffebc4)





reply via email to

[Prev in Thread] Current Thread [Next in Thread]