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

[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 address@hidden> 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 address@hidden> 1)
  tramp-wait-for-regexp(#<process *tramp/sudo address@hidden> nil 
"\\(^\\|\\)[^#$\n]*///5fe2bbf32410c0285dcbdf73105d3075#\\$?$")
  tramp-wait-for-output(#<process *tramp/sudo address@hidden>)
  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





reply via email to

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