GNU bug report logs -
#12375
Broken matching of regexps in fancy splitting
Previous Next
Reported by: jathd <jathdr <at> gmail.com>
Date: Fri, 7 Sep 2012 05:31:02 UTC
Severity: normal
Tags: fixed
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Lars Ingebrigtsen <larsi <at> gnus.org> writes:
> Hm. Looking at the code, I can't see where it's re-matching against the
> original regexp.
It's around line 1470:
(let ((value (nth 1 split)))
(if (symbolp value)
(setq value (cdr (assq value nnmail-split-abbrev-alist))))
;; Someone might want to do a \N sub on this match, so get the
;; correct match positions.
(re-search-backward value start-of-value))
The `value' is the regexp I specified in `nnmail-split-fancy'. Before
that, to see whether a header matches, the function does
(re-search-backward (cdr cached-pair) nil t)
where (cdr cached-pair) is a regexp it constructed the first time
around. Since it prepended a "\\<" to *that* regexp, the header is
correctly identified; but it didn't prepend anything to `value', so the
extraction goes wrong.
--
jathd
This bug report was last modified 8 years and 176 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.