Upstream PR: kurtmckee/feedparser#571
Malformed email-like author values with dotted domains could make the author email regex rescan from inside the same token. The result was not a crash in normal happy-path parsing, but a correctness and robustness problem around adversarial input.
Author email extraction should either identify the intended address once or reject the malformed value. It should not repeatedly rediscover overlapping fragments inside the same token.
The regex was anchored so matching starts at the intended token boundary. A regression test captures the dotted-domain payload that motivated the change.
The PR was checked with the full local project suite and style gates:
python -m pytest -qpython -m mypyblack --check --target-version py310 feedparser/mixin.py tests/test_author_email.pyisort --check-only feedparser/mixin.py tests/test_author_email.pyflake8 feedparser/mixin.py tests/test_author_email.pypython -m compileall -q feedparser testsgit diff --check