[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#10187: Tramp freezes up if you interrupt sudo's prompt
From: |
Stefan Monnier |
Subject: |
bug#10187: Tramp freezes up if you interrupt sudo's prompt |
Date: |
Thu, 01 Dec 2011 14:52:26 -0500 |
Package: Emacs
Version: 24.0.91
% emacs -Q
C-x C-f /sudo::./ TAB
at the prompt hit C-g
this freezes Emacs (C-g doesn't help any further).
If I send the SIGUSR2 to wake it up, I get the appended backtrace.
Stefan
Debugger entered--Lisp error: (quit)
accept-process-output(#<process *tramp/sudo root@ceviche*> 1 nil)
byte-code(<BYTECODE> [timeout -with-timeout-timer- with-timeout-timers proc
timeout-msecs run-with-timer 1 nil #[nil "\300\301\211\"\207" [throw timeout]
3] ((cancel-timer -with-timeout-timer-)) accept-process-output] 5)
tramp-accept-process-output(#<process *tramp/sudo root@ceviche*> 1)
tramp-wait-for-regexp(#<process *tramp/sudo root@ceviche*> nil
"\\(^\\|\\)[^#$\n]*///5fe2bbf32410c0285dcbdf73105d3075#\\$?$")
tramp-wait-for-output(#<process *tramp/sudo root@ceviche*>)
tramp-send-command(["sudo" "root" "ceviche" "./"] "cd ~root; pwd")
tramp-sh-handle-expand-file-name("/sudo::./" nil)
apply(tramp-sh-handle-expand-file-name ("/sudo::./" nil))
tramp-sh-file-name-handler(expand-file-name "/sudo::./" nil)
apply(tramp-sh-file-name-handler expand-file-name ("/sudo::./" nil))
byte-code(<BYTECODE> [foreign sf d default-directory x operation autoload
boundp temporary-file-directory fboundp temp-directory subrp functionp getenv
"TEMP" file-directory-p file-name-as-directory "TMP" "TMPDIR" file-exists-p
"c:/temp" message "Neither `temporary-file-directory' nor `temp-directory' is
defined -- using /tmp." "/tmp" load noerror nomessage apply args] 5)
tramp-file-name-handler(expand-file-name "/sudo::./" nil)
expand-file-name("/sudo::./")
tramp-handle-file-remote-p("/sudo::./" nil nil)
apply(tramp-handle-file-remote-p ("/sudo::./" nil nil))
tramp-sh-file-name-handler(file-remote-p "/sudo::./" nil nil)
apply(tramp-sh-file-name-handler file-remote-p ("/sudo::./" nil nil))
byte-code(<BYTECODE> [foreign sf d default-directory x operation autoload
boundp temporary-file-directory fboundp temp-directory subrp functionp getenv
"TEMP" file-directory-p file-name-as-directory "TMP" "TMPDIR" file-exists-p
"c:/temp" message "Neither `temporary-file-directory' nor `temp-directory' is
defined -- using /tmp." "/tmp" load noerror nomessage apply args] 5)
tramp-file-name-handler(file-remote-p "/sudo::./" nil nil)
file-remote-p("/sudo::./")
byte-code(<BYTECODE> [end tramp-rfn-eshadow-update-overlay-regexp
tramp-rfn-eshadow-overlay file-name-handler-alist
rfn-eshadow-update-overlay-hook rfn-eshadow-overlay subrp overlay-end functionp
minibuffer-prompt-end file-remote-p buffer-substring-no-properties string-match
buffer-string nil move-overlay rfn-eshadow-update-overlay] 4)
tramp-rfn-eshadow-update-overlay()
run-hooks(rfn-eshadow-update-overlay-hook)
byte-code(<BYTECODE> [rfn-eshadow-overlay non-essential end start mid goal
substitute-in-file-name minibuffer-contents overlay-end minibuffer-prompt-end t
nil (byte-code "\301\302d\"!\207" [pos substitute-in-file-name
buffer-substring-no-properties] 4) ((error)) 2 move-overlay run-hooks
rfn-eshadow-update-overlay-hook pos] 6)
rfn-eshadow-update-overlay()
read-from-minibuffer("Find file: " "~/src/emacs/trunk/" (keymap (keymap (32))
keymap (10 . minibuffer-complete-and-exit) (13 . minibuffer-complete-and-exit)
keymap (menu-bar keymap (minibuf "Minibuf" keymap (tab menu-item "Complete"
minibuffer-complete :help "Complete as far as possible") (space menu-item
"Complete Word" minibuffer-complete-word :help "Complete at most one word") (63
menu-item "List Completions" minibuffer-completion-help :help "Display all
possible completions") "Minibuf")) (27 keymap (118 . switch-to-completions))
(prior . switch-to-completions) (63 . minibuffer-completion-help) (32 .
minibuffer-complete-word) (9 . minibuffer-complete) keymap (menu-bar keymap
(minibuf "Minibuf" keymap (previous menu-item "Previous History Item"
previous-history-element :help "Put previous minibuffer history element in the
minibuffer") (next menu-item "Next History Item" next-history-element :help
"Put next minibuffer history element in the minibuffer") (isearch-backward
menu-item "Isearch History Backward" isearch-backward :help "Incrementally
search minibuffer history backward") (isearch-forward menu-item "Isearch
History Forward" isearch-forward :help "Incrementally search minibuffer history
forward") (return menu-item "Enter" exit-minibuffer :key-sequence "" :help
"Terminate input and exit minibuffer") (quit menu-item "Quit"
abort-recursive-edit :help "Abort input and exit minibuffer") "Minibuf")) (10 .
exit-minibuffer) (13 . exit-minibuffer) (7 . abort-recursive-edit) (C-tab .
file-cache-minibuffer-complete) (9 . self-insert-command) (up .
previous-history-element) (prior . previous-history-element) (down .
next-history-element) (next . next-history-element) (27 keymap (114 .
previous-matching-history-element) (115 . next-matching-history-element) (112 .
previous-history-element) (110 . next-history-element))) nil file-name-history
"~/src/emacs/trunk/" nil)
completing-read-default("Find file: " read-file-name-internal file-exists-p
confirm-after-completion "~/src/emacs/trunk/" file-name-history
"~/src/emacs/trunk/" nil)
completing-read("Find file: " read-file-name-internal file-exists-p
confirm-after-completion "~/src/emacs/trunk/" file-name-history
"~/src/emacs/trunk/")
read-file-name-default("Find file: " nil "~/src/emacs/trunk/"
confirm-after-completion nil nil)
read-file-name("Find file: " nil "~/src/emacs/trunk/"
confirm-after-completion)
find-file-read-args("Find file: " confirm-after-completion)
byte-code("\300\301\302 \"\207" [find-file-read-args "Find file: "
confirm-nonexistent-file-or-buffer] 3)
call-interactively(find-file nil nil)
Stefan
- bug#10187: Tramp freezes up if you interrupt sudo's prompt,
Stefan Monnier <=