don't use function-equal in nadvice
[bpt/emacs.git] / lisp / eshell / esh-proc.el
index b72e632..7575593 100644 (file)
@@ -1,6 +1,6 @@
 ;;; esh-proc.el --- process management  -*- lexical-binding:t -*-
 
-;; Copyright (C) 1999-2013 Free Software Foundation, Inc.
+;; Copyright (C) 1999-2014 Free Software Foundation, Inc.
 
 ;; Author: John Wiegley <johnw@gnu.org>
 
@@ -116,9 +116,11 @@ information, for example."
 (defun eshell-kill-process-function (proc status)
   "Function run when killing a process.
 Runs `eshell-reset-after-proc' and `eshell-kill-hook', passing arguments
-PROC and STATUS to both."
-  (or (memq 'eshell-reset-after-proc eshell-kill-hook)
-      (eshell-reset-after-proc proc status))
+PROC and STATUS to functions on the latter."
+  ;; Was there till 24.1, but it is not optional.
+  (if (memq 'eshell-reset-after-proc eshell-kill-hook)
+      (setq eshell-kill-hook (delq 'eshell-reset-after-proc eshell-kill-hook)))
+  (eshell-reset-after-proc status)
   (run-hook-with-args 'eshell-kill-hook proc status))
 
 (defun eshell-proc-initialize ()
@@ -133,11 +135,7 @@ PROC and STATUS to both."
 ; (define-key eshell-command-map [(control ?z)]  'eshell-stop-process)
   (define-key eshell-command-map [(control ?\\)] 'eshell-quit-process))
 
-;; This used to be on `eshell-kill-hook', which calls its functions
-;; with two arguments.  Nowadays we call it directly in
-;; `eshell-kill-process-function', but in case anyone still has it
-;; on `eshell-kill-hook', _proc has to stay.
-(defun eshell-reset-after-proc (_proc status)
+(defun eshell-reset-after-proc (status)
   "Reset the command input location after a process terminates.
 The signals which will cause this to happen are matched by
 `eshell-reset-signals'."