Subject: bug#16920: 24.3; fix eldoc-message to clear own message only

From: Leo Liu <[email-masked]>
Date: Sat, 08 Mar 2014 15:32:25 +0800

On 2014-03-08 06:54 +0800, Stefan Monnier wrote:
> This can't be right when eldoc-message-function doesn't use `message'.
> So, we should probably move this test to the eldoc-message-function.
>
>
>         Stefan

The bug happens when exit minibuffer so we need to clear its state
thoroughly at exit time. How about something like this:

=== modified file 'lisp/emacs-lisp/eldoc.el'
--- lisp/emacs-lisp/eldoc.el	2014-01-30 07:54:28 +0000
+++ lisp/emacs-lisp/eldoc.el	2014-03-08 07:30:21 +0000
@@ -219,7 +219,9 @@
   (if (minibufferp)
       (progn
 	(add-hook 'minibuffer-exit-hook
-		  (lambda () (setq eldoc-mode-line-string nil))
+		  (lambda () (setq eldoc-mode-line-string nil
+			      ;; http://debbugs.gnu.org/16920
+			      eldoc-last-message nil))
 		  nil t)
 	(with-current-buffer
 	    (window-buffer