From: Christopher Larson Date: Wed, 21 Nov 2018 18:14:07 +0000 (+0500) Subject: bitbake: fetch/git: fix AttributeError in shallow extraction logic X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e3e88600ced72ebfd21ea96084684351c721c47f;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git bitbake: fetch/git: fix AttributeError in shallow extraction logic This code checks to see if shallow is either disabled or the tarball is missing, but the else block tries to print the tarball filename, and this attribute doesn't exist at all when shallow is disabled. Handle the two cases separately to give sane errors for both cases without the exception: Exception: AttributeError: 'FetchData' object has no attribute 'fullshallow' (Bitbake rev: bdbb558342ebb4e64384c9838d2485d9299d91a6) Signed-off-by: Christopher Larson Signed-off-by: Richard Purdie --- diff --git a/bitbake/lib/bb/fetch2/git.py b/bitbake/lib/bb/fetch2/git.py index 15858a62419..59a2ee8f808 100644 --- a/bitbake/lib/bb/fetch2/git.py +++ b/bitbake/lib/bb/fetch2/git.py @@ -488,12 +488,15 @@ class Git(FetchMethod): source_error.append("clone directory not available or not up to date: " + ud.clonedir) if not source_found: - if ud.shallow and os.path.exists(ud.fullshallow): - bb.utils.mkdirhier(destdir) - runfetchcmd("tar -xzf %s" % ud.fullshallow, d, workdir=destdir) - source_found = True + if ud.shallow: + if os.path.exists(ud.fullshallow): + bb.utils.mkdirhier(destdir) + runfetchcmd("tar -xzf %s" % ud.fullshallow, d, workdir=destdir) + source_found = True + else: + source_error.append("shallow clone not available: " + ud.fullshallow) else: - source_error.append("shallow clone not enabled or not available: " + ud.fullshallow) + source_error.append("shallow clone not enabled") if not source_found: raise bb.fetch2.UnpackError("No up to date source found: " + "; ".join(source_error), ud.url)