]> code.ossystems Code Review - openembedded-core.git/commitdiff
bitbake/utils.py: Allow copyfile to copy files which aren't readable
authorRichard Purdie <rpurdie@linux.intel.com>
Fri, 20 Aug 2010 14:11:44 +0000 (15:11 +0100)
committerRichard Purdie <rpurdie@linux.intel.com>
Fri, 20 Aug 2010 14:11:44 +0000 (15:11 +0100)
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
bitbake/lib/bb/utils.py

index fd7948f1de3b27e9e62f0f33d7c4d69bd3e4b83a..56577dabe1da02ecfb2d64a322fc9d2934eff515 100644 (file)
@@ -686,11 +686,14 @@ def copyfile(src, dest, newmtime = None, sstat = None):
             return False
 
     if stat.S_ISREG(sstat[stat.ST_MODE]):
+        os.chmod(src, stat.S_IRUSR) # Make sure we can read it
         try: # For safety copy then move it over.
             shutil.copyfile(src, dest + "#new")
             os.rename(dest + "#new", dest)
         except Exception as e:
             print('copyfile: copy', src, '->', dest, 'failed.', e)
+            os.chmod(src, stat.S_IMODE(sstat[stat.ST_MODE]))
+            os.utime(src, (sstat[stat.ST_ATIME], sstat[stat.ST_MTIME]))
             return False
     else:
         #we don't yet handle special, so we need to fall back to /bin/mv