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
Message #23 received at 12375 <at> debbugs.gnu.org (full text, mbox):
On 2014-01-31 00:37 +0100, Lars Ingebrigtsen wrote:
> jathd <jathdr <at> gmail.com> writes:
>
>> 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.
>
> Aha.
>
> I've now rewritten that function to save the match data explicitly after
> doing the first match so that we don't have to redo the search. It
> should be faster, too.
>
> Does this fix the problem for you? It's in git Gnus, but should be in
> bzr Emacs soon...
It seems this happened recently, and it apparently broke something for
me: I'm subscribed to Debian bug 715194[1], and messages coming from
that bug have the following header line:
,----
| Resent-CC: Debian OpenSSH Maintainers <debian-ssh <at> lists.debian.org>
`----
Now I'm using the following split rule, copied from the Gnus manual:
,----
| (to "debian-\\b\\(\\w+\\)@lists.debian.org" "mail.debian.\\1")
`----
With that rule, messages to the above bug used to appear under
mail.debian.ssh, but since my latest Emacs upgrade yesterday, they show
up under "mail.debian.resent-cc: debian openssh maintainers <" instead.
Huh?
Cheers,
Sven
1. http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=715194
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.