]> source.dussan.org Git - jgit.git/commit
FooterLines: handle extraction from messages without headers 44/1173244/8
authorNitzan Gur-Furman <nitzan@google.com>
Wed, 6 Dec 2023 13:47:27 +0000 (14:47 +0100)
committerNitzan Gur-Furman <nitzan@google.com>
Tue, 9 Jan 2024 08:14:06 +0000 (09:14 +0100)
commit8116f66b9c8e032ef0a2c14e5b242e710ae0d323
tree22659c209fdf4ba5f1d8a4896e91bd59b2eea26c
parent4d2bdba32687b87a18b0b3a8439a573305ace3ea
FooterLines: handle extraction from messages without headers

Prior to this change, long subjects of messages with no headers were
treated as headers, and therefore were skipped. In a message of the
form `<long subject>\n\n<footers>`, the footers would then get parsed
as a message, meaning no footers were returned.

After this change, the first lines are skipped only if they match any
of the known headers. The first line ofter the optional headers is then
assumed to be the subject line.

`FooterLineTest` had a few test cases for extracting footers from
messages with no headers. However, there were all with short messages,
so the "skip this line" logic in `RawParseUtils` was never triggered.
Added test case to catch this issue.

Change-Id: I971a1dddf1a9aea094360c3c8fc3b9a8b011bbf9
Issue: Google b/287891316
org.eclipse.jgit.test/tst/org/eclipse/jgit/revwalk/FooterLineTest.java
org.eclipse.jgit/src/org/eclipse/jgit/revwalk/FooterLine.java
org.eclipse.jgit/src/org/eclipse/jgit/util/RawParseUtils.java