patman: Check commit_match before stripping leading whitespace

True commit lines start at column zero.  Anything that is indented
is part of the commit message instead.  I noticed this by trying to
run buildman with commit e3a4facdfc
as master, which contained a reference to a Linux commit inside
the commit message.  ProcessLine saw that as a genuite commit
line, and thus buildman tried to build it, and died with an
exception because that SHA is not present in the U-Boot tree.

Signed-off-by: Scott Wood <scottwood@freescale.com>
Acked-by: Simon Glass <sjg@chromium.org>
This commit is contained in:
Scott Wood 2014-09-25 14:30:46 -05:00 committed by Simon Glass
parent 2181830f11
commit 4b89b8135f

View file

@ -139,6 +139,9 @@ class PatchStream:
# Initially we have no output. Prepare the input line string
out = []
line = line.rstrip('\n')
commit_match = re_commit.match(line) if self.is_log else None
if self.is_log:
if line[:4] == ' ':
line = line[4:]
@ -146,7 +149,6 @@ class PatchStream:
# Handle state transition and skipping blank lines
series_tag_match = re_series_tag.match(line)
commit_tag_match = re_commit_tag.match(line)
commit_match = re_commit.match(line) if self.is_log else None
cover_cc_match = re_cover_cc.match(line)
signoff_match = re_signoff.match(line)
tag_match = None