fetch/__init__.py: Don't create .lock files for local files
authorRichard Purdie <rpurdie@linux.intel.com>
Sat, 18 Aug 2007 14:43:20 +0000 (14:43 +0000)
committerRichard Purdie <rpurdie@linux.intel.com>
Sat, 18 Aug 2007 14:43:20 +0000 (14:43 +0000)
lib/bb/fetch/__init__.py

index bbff516..41dca01 100644 (file)
@@ -135,26 +135,27 @@ def go(d):
     for u in urldata:
         ud = urldata[u]
         m = ud.method
-        if ud.localfile and not m.forcefetch(u, ud, d) and os.path.exists(ud.md5):
-            # File already present along with md5 stamp file
-            # Touch md5 file to show activity
-            os.utime(ud.md5, None)
-            continue
-        lf = open(ud.lockfile, "a+")
-        fcntl.flock(lf.fileno(), fcntl.LOCK_EX)
-        if ud.localfile and not m.forcefetch(u, ud, d) and os.path.exists(ud.md5):
-            # If someone else fetched this before we got the lock, 
-            # notice and don't try again
-            os.utime(ud.md5, None)
+        if ud.localfile:
+            if not m.forcefetch(u, ud, d) and os.path.exists(ud.md5):
+                # File already present along with md5 stamp file
+                # Touch md5 file to show activity
+                os.utime(ud.md5, None)
+                continue
+            lf = open(ud.lockfile, "a+")
+            fcntl.flock(lf.fileno(), fcntl.LOCK_EX)
+            if not m.forcefetch(u, ud, d) and os.path.exists(ud.md5):
+                # If someone else fetched this before we got the lock, 
+                # notice and don't try again
+                os.utime(ud.md5, None)
+                fcntl.flock(lf.fileno(), fcntl.LOCK_UN)
+                lf.close
+                continue
+        m.go(u, ud, d)
+        if ud.localfile:
+            if not m.forcefetch(u, ud, d):
+                Fetch.write_md5sum(u, ud, d)
             fcntl.flock(lf.fileno(), fcntl.LOCK_UN)
             lf.close
-            continue
-        m.go(u, ud, d)
-        if ud.localfile and not m.forcefetch(u, ud, d):
-            Fetch.write_md5sum(u, ud, d)
-        fcntl.flock(lf.fileno(), fcntl.LOCK_UN)
-        lf.close
-
 
 def localpaths(d):
     """