1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-23 07:19:15 +00:00

* lisp/progmodes/flymake.el (flymake-start-syntax-check-process): Obey `dir'.

This commit is contained in:
Stefan Monnier 2011-04-20 15:08:21 -03:00
parent 024ff1707e
commit c79a6f38ab
2 changed files with 29 additions and 27 deletions

View File

@ -1,5 +1,8 @@
2011-04-20 Stefan Monnier <monnier@iro.umontreal.ca> 2011-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
* progmodes/flymake.el (flymake-start-syntax-check-process):
Obey `dir'. Simplify.
* vc/vc.el (vc-version-ediff): Call ediff-vc-internal directly, since * vc/vc.el (vc-version-ediff): Call ediff-vc-internal directly, since
we're in VC after all. we're in VC after all.

View File

@ -1152,35 +1152,34 @@ For the format of LINE-ERR-INFO, see `flymake-ler-make-ler'."
(defun flymake-start-syntax-check-process (cmd args dir) (defun flymake-start-syntax-check-process (cmd args dir)
"Start syntax check process." "Start syntax check process."
(let* ((process nil)) (condition-case err
(condition-case err (let* ((process
(progn (let ((default-directory (or dir default-directory)))
(when dir (when dir
(let ((default-directory dir)) (flymake-log 3 "starting process on dir %s" dir))
(flymake-log 3 "starting process on dir %s" default-directory))) (apply 'start-file-process
(setq process (apply 'start-file-process "flymake-proc" (current-buffer) cmd args))))
"flymake-proc" (current-buffer) cmd args)) (set-process-sentinel process 'flymake-process-sentinel)
(set-process-sentinel process 'flymake-process-sentinel) (set-process-filter process 'flymake-process-filter)
(set-process-filter process 'flymake-process-filter) (push process flymake-processes)
(push process flymake-processes)
(setq flymake-is-running t) (setq flymake-is-running t)
(setq flymake-last-change-time nil) (setq flymake-last-change-time nil)
(setq flymake-check-start-time (flymake-float-time)) (setq flymake-check-start-time (flymake-float-time))
(flymake-report-status nil "*") (flymake-report-status nil "*")
(flymake-log 2 "started process %d, command=%s, dir=%s" (flymake-log 2 "started process %d, command=%s, dir=%s"
(process-id process) (process-command process) (process-id process) (process-command process)
default-directory) default-directory)
process) process)
(error (error
(let* ((err-str (format "Failed to launch syntax check process '%s' with args %s: %s" (let* ((err-str (format "Failed to launch syntax check process '%s' with args %s: %s"
cmd args (error-message-string err))) cmd args (error-message-string err)))
(source-file-name buffer-file-name) (source-file-name buffer-file-name)
(cleanup-f (flymake-get-cleanup-function source-file-name))) (cleanup-f (flymake-get-cleanup-function source-file-name)))
(flymake-log 0 err-str) (flymake-log 0 err-str)
(funcall cleanup-f) (funcall cleanup-f)
(flymake-report-fatal-status "PROCERR" err-str)))))) (flymake-report-fatal-status "PROCERR" err-str)))))
(defun flymake-kill-process (proc) (defun flymake-kill-process (proc)
"Kill process PROC." "Kill process PROC."