[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)