wmlmove can now perform deletions from core.

This commit is contained in:
Eric S. Raymond 2007-05-20 00:24:13 +00:00
parent 407f529bb0
commit 835e64d9a2
2 changed files with 7 additions and 1 deletions

View file

@ -169,7 +169,7 @@ overwrite()
print "# Image deletions:"
for (name, defloc) in srcrefs.fileref.items():
for namespace in map(wmltools.directory_namespace, srclist):
if wmltools.namespace_member(name, namespace):
if wmltools.namespace_member(name, namespace) and cref.refcount(name) == 0:
if revert:
print wmltools.vcundelete(name)
else:

View file

@ -273,6 +273,12 @@ class CrossRef:
smallref.fileref[filename].references[referrer] = referlines
del self.fileref[filename].references[referrer]
return smallref
def refcount(self, name):
"Return a reference count for the specified resource."
try:
return len(self.fileref[name].references.keys())
except KeyError:
return 0
## Namespace management
#