From: Bruce Ashfield Date: Mon, 17 Mar 2014 18:00:15 +0000 (-0400) Subject: kernel-yocto: use cat-file instead of git-show X-Git-Tag: 2015-4~1691 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=228c05013fe691321ec00467d8d0c0bb64dd175c;p=openembedded-core.git kernel-yocto: use cat-file instead of git-show Parsing the output of git show is error prone, since it changes based on the type of issue with bad comit IDs. Since the output is no longer used in the case of a valid ref, we can switch to git-cat-file and simply check the return code. Signed-off-by: Darren Hart Signed-off-by: Bruce Ashfield --- diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass index 6c92427704..38c886b21b 100644 --- a/meta/classes/kernel-yocto.bbclass +++ b/meta/classes/kernel-yocto.bbclass @@ -321,8 +321,8 @@ do_validate_branches() { fi fi - ref=`git show ${machine_srcrev} 2>&1 | head -n1 || true` - if [ "$ref" = "fatal: bad object ${target_meta_head}" ]; then + git cat-file -t ${machine_srcrev} > /dev/null + if [ if $? -ne 0 ]; then echo "ERROR ${machine_srcrev} is not a valid commit ID." echo "The kernel source tree may be out of sync" exit 1 @@ -358,8 +358,8 @@ do_validate_branches() { git show-ref --quiet --verify -- "refs/heads/${KMETA}" if [ $? -eq 0 ] && [ "${target_meta_head}" != "AUTOINC" ]; then if [ "$meta_head" != "$target_meta_head" ]; then - ref=`git show ${target_meta_head} 2>&1 | head -n1 || true` - if [ "$ref" = "fatal: bad object ${target_meta_head}" ]; then + git cat-file -t ${target_meta_head} > /dev/null + if [ $? -ne 0 ]; then echo "ERROR ${target_meta_head} is not a valid commit ID" echo "The kernel source tree may be out of sync" exit 1