rendered paste body=== modified file 'pkgcore/fs/ops.py'
--- pkgcore/fs/ops.py 2007-06-17 03:49:16 +0000
+++ pkgcore/fs/ops.py 2007-07-13 20:36:05 +0000
@@ -226,6 +226,7 @@
iterate = iter
d = list(iterate(cset.iterdirs()))
+ # Create parent dirs first
d.sort()
for x in d:
callback(x)
@@ -243,14 +244,10 @@
except OSError, oe:
if oe.errno != errno.ENOENT:
raise
- try:
- # we do this form to catch dangling symlinks
- mkdir(x)
- except OSError, oe:
- if oe.errno != errno.EEXIST:
- raise
+ # Remove the dangling symbolic link
+ if os.path.islink(x.location):
os.unlink(x.location)
- mkdir(x)
+ mkdir(x)
ensure_perms(x)
del d