sstate: list directories in child first order in the manifest file

The directory list in the manifest file needs to be sorted such that child
directories are deleted first. Fortunately as the list is generated by walking
the directory tree achieving this is as simple as reversing the directory list.

Fixes [BUGID #269]

Signed-off-by: Joshua Lock <josh@linux.intel.com>
This commit is contained in:
Joshua Lock 2010-09-29 12:10:57 +01:00
parent e88a8951be
commit 62fe6dc755
1 changed files with 4 additions and 2 deletions

View File

@ -106,8 +106,10 @@ def sstate_install(ss, d):
# We want to ensure that directories appear at the end of the manifest
# so that when we test to see if they should be deleted any contents
# added by the task will have been removed first.
for dir in shareddirs:
f.write(dir + "\n")
dirs = sorted(shareddirs, key=len)
# Must remove children first, which will have a longer path than the parent
for di in reversed(dirs):
f.write(di + "\n")
f.close()
for lock in locks: