From a24386ba41206b3ac01cdb6ae11282a8ae978184 Mon Sep 17 00:00:00 2001 From: Chris Larson Date: Thu, 20 Nov 2008 12:40:01 -0700 Subject: base.bbclass: Fix up disclean and clean up its exception handling My python is rusty :) --- classes/base.bbclass | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'classes/base.bbclass') diff --git a/classes/base.bbclass b/classes/base.bbclass index 00bbffd096..2c03c8fcb0 100644 --- a/classes/base.bbclass +++ b/classes/base.bbclass @@ -512,17 +512,23 @@ python base_do_distclean() { if not src_uri: return - for uri in src_uri.split() - if type == "file": + for uri in src_uri.split(): + if bb.decodeurl(uri)[0] == "file": continue try: local = bb.data.expand(bb.fetch.localpath(uri, d), d) - bb.note("removing %s" % local) - os.remove(local) - os.remove(local + ".md5") except bb.MalformedUrl, e: - raise FuncFailed('Unable to generate local path for %s' % e) + bb.debug(1, 'Unable to generate local path for malformed uri: %s' % e) + else: + bb.note("removing %s" % local) + try: + if os.path.exists(local + ".md5"): + os.remove(local + ".md5") + if os.path.exists(local): + os.remove(local) + except OSError, e: + bb.note("Error in removal: %s" % (local, e)) } SCENEFUNCS += "base_scenefunction" -- cgit v1.2.3