diff options
| -rw-r--r-- | lisp/ChangeLog | 11 | ||||
| -rw-r--r-- | lisp/eshell/esh-proc.el | 26 |
2 files changed, 15 insertions, 22 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 93fb6babcd7..e911bd027c7 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,12 @@ | |||
| 1 | 2008-11-25 Glenn Morris <rgm@gnu.org> | ||
| 2 | |||
| 3 | * eshell/esh-proc.el (eshell-gather-process-output): | ||
| 4 | Revert previous change. (re-opens Bug#1388) | ||
| 5 | |||
| 6 | * select.el (x-set-cut-buffer): Fix signal arguments. | ||
| 7 | |||
| 8 | * speedbar.el (speedbar-restricted-move): Fix signal arguments. | ||
| 9 | |||
| 1 | 2008-11-25 Juanma Barranquero <lekktu@gmail.com> | 10 | 2008-11-25 Juanma Barranquero <lekktu@gmail.com> |
| 2 | 11 | ||
| 3 | * play/bubbles.el (bubbles-mode): Define with `define-derived-mode'. | 12 | * play/bubbles.el (bubbles-mode): Define with `define-derived-mode'. |
| @@ -143,7 +152,7 @@ | |||
| 143 | 152 | ||
| 144 | 2008-11-24 Dan Nicolaescu <dann@ics.uci.edu> | 153 | 2008-11-24 Dan Nicolaescu <dann@ics.uci.edu> |
| 145 | 154 | ||
| 146 | * vc-hg.el (vc-hg-global-switches): Remove. | 155 | * vc-hg.el (vc-hg-program): Remove. |
| 147 | (vc-hg-state, vc-hg-working-revision, vc-hg-command): | 156 | (vc-hg-state, vc-hg-working-revision, vc-hg-command): |
| 148 | Undo previous change. | 157 | Undo previous change. |
| 149 | 158 | ||
diff --git a/lisp/eshell/esh-proc.el b/lisp/eshell/esh-proc.el index 39fea83cd8d..25d9dd64663 100644 --- a/lisp/eshell/esh-proc.el +++ b/lisp/eshell/esh-proc.el | |||
| @@ -250,27 +250,11 @@ Used only on systems which do not support async subprocesses.") | |||
| 250 | (cond | 250 | (cond |
| 251 | ((fboundp 'start-process) | 251 | ((fboundp 'start-process) |
| 252 | (setq proc | 252 | (setq proc |
| 253 | ;; Bug#1388. Some commands (eg bc) check isatty to decide | 253 | (apply 'start-process |
| 254 | ;; whether they are being called interactively. | 254 | (file-name-nondirectory command) nil |
| 255 | ;; A normal shell pipeline has: | 255 | ;; `start-process' can't deal with relative |
| 256 | ;; first: stdin tty , stdout pipe | 256 | ;; filenames |
| 257 | ;; rest : stdin pipe, stdout pipe | 257 | (append (list (expand-file-name command)) args))) |
| 258 | ;; last : stdin pipe, stdout tty | ||
| 259 | ;; We have: | ||
| 260 | ;; first: stdin tty , stdout tty | ||
| 261 | ;; last : stdin pipe, stdout pipe | ||
| 262 | ;; In other words, the first and last elements have the | ||
| 263 | ;; wrong kind of stdout. (Perhaps this does not matter much...) | ||
| 264 | ;; FIXME which is better for the first element: | ||
| 265 | ;; tty/tty (as now), or pipe/pipe? | ||
| 266 | (let ((process-connection-type | ||
| 267 | (unless (and eshell-in-pipeline-p | ||
| 268 | (not (eq eshell-in-pipeline-p 'first))) | ||
| 269 | process-connection-type))) | ||
| 270 | (apply 'start-process | ||
| 271 | (file-name-nondirectory command) nil | ||
| 272 | ;; `start-process' can't deal with relative filenames | ||
| 273 | (append (list (expand-file-name command)) args)))) | ||
| 274 | (eshell-record-process-object proc) | 258 | (eshell-record-process-object proc) |
| 275 | (set-process-buffer proc (current-buffer)) | 259 | (set-process-buffer proc (current-buffer)) |
| 276 | (if (eshell-interactive-output-p) | 260 | (if (eshell-interactive-output-p) |