From c4e66a7fe0c314b843aac6340995c584ec156529 Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Tue, 8 Feb 2011 12:44:06 +0000
Subject: bitbake/fetch2: When using BB_FETCH_PREMIRRORONLY, set BB_NO_NETWORK
 after premirrors as there could be data processing needed by the real fetcher

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
 bitbake/lib/bb/fetch2/__init__.py | 28 +++++++++++++++-------------
 1 file changed, 15 insertions(+), 13 deletions(-)

(limited to 'bitbake/lib/bb')

diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py
index 89f5930b7..bfc0e2832 100644
--- a/bitbake/lib/bb/fetch2/__init__.py
+++ b/bitbake/lib/bb/fetch2/__init__.py
@@ -843,19 +843,21 @@ class Fetch(object):
                         os.symlink(mirrorpath, os.path.join(self.d.getVar("DL_DIR", True), os.path.basename(mirrorpath)))
 
                 if bb.data.getVar("BB_FETCH_PREMIRRORONLY", self.d, True) is None:
-                    if not localpath and m.need_update(u, ud, self.d):
-                        try:
-                            m.download(u, ud, self.d)
-                            if hasattr(m, "build_mirror_data"):
-                                m.build_mirror_data(u, ud, self.d)
-                            localpath = ud.localpath
-
-                        except BBFetchException:
-                            # Remove any incomplete fetch
-                            if os.path.isfile(ud.localpath):
-                                bb.utils.remove(ud.localpath)
-                            mirrors = mirror_from_string(bb.data.getVar('MIRRORS', self.d, True))
-                            localpath = try_mirrors (self.d, ud, mirrors)
+                    bb.data.setVar("BB_NO_NETWORK", "1", self.d)
+
+                if not localpath and m.need_update(u, ud, self.d):
+                    try:
+                        m.download(u, ud, self.d)
+                        if hasattr(m, "build_mirror_data"):
+                            m.build_mirror_data(u, ud, self.d)
+                        localpath = ud.localpath
+
+                    except BBFetchException:
+                        # Remove any incomplete fetch
+                        if os.path.isfile(ud.localpath):
+                            bb.utils.remove(ud.localpath)
+                        mirrors = mirror_from_string(bb.data.getVar('MIRRORS', self.d, True))
+                        localpath = try_mirrors (self.d, ud, mirrors)
 
                 if not localpath or not os.path.exists(localpath):
                     raise FetchError("Unable to fetch URL %s from any source." % u, u)
-- 
cgit v1.2.3