Subject: Re: bug#9679: 24.0.90; After rgrep, next-error goes to the wrong line

From: Ari Roponen <[email-masked]>
Date: Fri, 07 Oct 2011 20:48:41 +0300

Juri Linkov <[email-masked]> writes:

> I don't understand how `t' is possible.  It looks like
> `compilation-next-error-function' is not in `grep-mode' at that time.
>
> Could you please add the following `message' to `compilation-next-error-function':
>
> (defun compilation-next-error-function (n &optional reset)
>   "Advance to the next error message and visit the file where the error was.
> This is the value of `next-error-function' in Compilation buffers."
>   (interactive "p")
>   (when reset
>     (setq compilation-current-error nil))
>   (message "mode: %S, buffer: %S" major-mode (current-buffer))
>   ...
>
> I get the following output:
>
> mode: grep-mode, buffer: #<buffer *grep*>
> col: 13, screen nil
> col: 7, screen nil
> col: 13, screen nil
> col: 7, screen nil
> mode: grep-mode, buffer: #<buffer *grep*>

Grep finished (matches found)
mode: grep-mode, buffer: #<buffer *grep*>
col: 13, screen nil
col: 7, screen nil
col: 13, screen t
col: 7, screen t
mode: grep-mode, buffer: #<buffer *grep*>

-- 
Ari Roponen