Mercurial > emacs
changeset 111579:4433803ef920
* lisp/progmodes/grep.el (grep-regexp-alist): Tighten the regexp.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Wed, 17 Nov 2010 09:54:15 -0500 |
parents | 312237f41f80 |
children | bd93bfc2fc83 |
files | lisp/ChangeLog lisp/progmodes/grep.el |
diffstat | 2 files changed, 10 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Wed Nov 17 08:28:15 2010 +0000 +++ b/lisp/ChangeLog Wed Nov 17 09:54:15 2010 -0500 @@ -1,3 +1,7 @@ +2010-11-17 Stefan Monnier <monnier@iro.umontreal.ca> + + * progmodes/grep.el (grep-regexp-alist): Tighten the regexp (bug#7378). + 2010-11-16 Stefan Monnier <monnier@iro.umontreal.ca> * progmodes/octave-mod.el: Rely on elecric-*-modes.
--- a/lisp/progmodes/grep.el Wed Nov 17 08:28:15 2010 +0000 +++ b/lisp/progmodes/grep.el Wed Nov 17 09:54:15 2010 -0500 @@ -348,7 +348,11 @@ ;; produces them ;; ("^\\(.+?\\)\\(:[ \t]*\\)\\([0-9]+\\)\\2\\(?:\\([0-9]+\\)\\(?:-\\([0-9]+\\)\\)?\\2\\)?" ;; 1 3 (4 . 5)) - ("^\\(\\(.+?\\):\\([0-9]+\\):\\).*?\ + ;; Note that we want to use as tight a regexp as we can to try and + ;; handle weird file names (with colons in them) as well as possible. + ;; E.g. we use [1-9][0-9]* rather than [0-9]+ so as to accept ":034:" in + ;; file names. + ("^\\(\\(.+?\\):\\([1-9][0-9]*\\):\\).*?\ \\(\033\\[01;31m\\(?:\033\\[K\\)?\\)\\(.*?\\)\\(\033\\[[0-9]*m\\)" 2 3 ;; Calculate column positions (beg . end) of first grep match on a line @@ -357,7 +361,7 @@ (- (match-beginning 4) (match-end 1))) . (lambda () (- (match-end 5) (match-end 1) - (- (match-end 4) (match-beginning 4))))) + (- (match-end 4) (match-beginning 4))))) nil 1) ("^Binary file \\(.+\\) matches$" 1 nil nil 0 1)) "Regexp used to match grep hits. See `compilation-error-regexp-alist'.")