summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lisp/ChangeLog6
-rw-r--r--lisp/progmodes/compile.el7
2 files changed, 12 insertions, 1 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 76ad76e0acd..304c1792b92 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,9 @@
+2011-05-09 Chong Yidong <cyd@stupidchicken.com>
+
+ * progmodes/compile.el (compilation-start): Run
+ compilation-filter-hook for the async case too.
+ (compilation-filter-hook): Doc fix.
+
2011-05-09 Deniz Dogan <deniz@dogan.se>
* wdired.el: Remove outdated installation comment. Fix usage
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index 60ad7cb0e9e..b8cac2fd331 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -68,7 +68,10 @@ the compilation to be killed, you can use this hook:
"Hook run after `compilation-filter' has inserted a string into the buffer.
It is called with the variable `compilation-filter-start' bound
to the position of the start of the inserted text, and point at
-its end.")
+its end.
+
+If Emacs lacks asynchronous process support, this hook is run
+after `call-process' inserts the grep output into the buffer.")
(defvar compilation-filter-start nil
"Start of the text inserted by `compilation-filter'.
@@ -1629,8 +1632,10 @@ Returns the compilation buffer created."
;; regardless of where the user sees point.
(goto-char (point-max))
(let* ((inhibit-read-only t) ; call-process needs to modify outbuf
+ (compilation-filter-start (point))
(status (call-process shell-file-name nil outbuf nil "-c"
command)))
+ (run-hooks 'compilation-filter-hook)
(cond ((numberp status)
(compilation-handle-exit
'exit status