From 4251978afccb4b58c477c74f2d9888a063e5a995 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Wed, 11 Jun 2014 23:27:09 -0600 Subject: [PATCH] patman: Only apply patches when we know the original HEAD When patman applies the patches it checks out a new branch, uses 'git am' to apply the patches one by one, and then tries to go back to the old branch. If you try this when the branch is 'undefined', this doesn't work as patman cannot restore the correct branch after applying the patches. It seems that 'undefined' is created by git and is persistent after it is created, so that you can end up on quite an old branch. Add a check for the 'undefined' branch to avoid this. Reported-by: Masahiro Yamada Signed-off-by: Simon Glass --- tools/patman/gitutil.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tools/patman/gitutil.py b/tools/patman/gitutil.py index 3ea256de2e..7b75c83a82 100644 --- a/tools/patman/gitutil.py +++ b/tools/patman/gitutil.py @@ -232,6 +232,10 @@ def ApplyPatches(verbose, args, start_point): print stdout return False old_head = stdout.splitlines()[0] + if old_head == 'undefined': + str = "Invalid HEAD '%s'" % stdout.strip() + print col.Color(col.RED, str) + return False # Checkout the required start point cmd = ['git', 'checkout', 'HEAD~%d' % start_point] -- 2.25.1