bundle: Accept prerequisites without commit messages
While explicitly stating that the commit message in a prerequisite line is optional, we required all lines with 40 or more characters to contain a space after the object name, bailing out if a line consisted of an object name only. This was to allow bundling a history to a commit without an message, but the code forgot that it already called rtrim() to remove that whitespace. As a workaround, only check for SP when the line has more than 40 characters. Signed-off-by: Lukas Fleischer <git@cryptocrack.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
2137ce01f8
commit
5446e33f35
2
bundle.c
2
bundle.c
@ -57,7 +57,7 @@ static int parse_bundle_header(int fd, struct bundle_header *header,
|
||||
* followed by SP and subject line.
|
||||
*/
|
||||
if (get_sha1_hex(buf.buf, sha1) ||
|
||||
(40 <= buf.len && !isspace(buf.buf[40])) ||
|
||||
(buf.len > 40 && !isspace(buf.buf[40])) ||
|
||||
(!is_prereq && buf.len <= 40)) {
|
||||
if (report_path)
|
||||
error(_("unrecognized header: %s%s (%d)"),
|
||||
|
Reference in New Issue
Block a user