issues with patchmaker

This commit is contained in:
David Rose 2009-09-28 22:38:38 +00:00
parent f82196dfc9
commit afe34ff575

View File

@ -385,6 +385,7 @@ class PatchMaker:
compressedFile.storeXml(xcompressed) compressedFile.storeXml(xcompressed)
self.compressedFilename = newCompressedFilename self.compressedFilename = newCompressedFilename
self.anyChanges = True
# Get the base_version--the bottom (oldest) of the patch # Get the base_version--the bottom (oldest) of the patch
# chain. # chain.
@ -426,9 +427,9 @@ class PatchMaker:
""" Rewrites the desc file with the new patch """ Rewrites the desc file with the new patch
information. """ information. """
## if not self.anyChanges: if not self.anyChanges:
## # No need to rewrite. # No need to rewrite.
## return return
xpackage = self.doc.FirstChildElement('package') xpackage = self.doc.FirstChildElement('package')
if not xpackage: if not xpackage:
@ -566,10 +567,15 @@ class PatchMaker:
def writeContentsFile(self): def writeContentsFile(self):
""" Writes the contents.xml file at the end of processing. """ """ Writes the contents.xml file at the end of processing. """
# We trust each of the packages to have already updated their # We also have to write the desc file for all packages that
# element within the contents.xml document, so all we have to # might need it, because we might have changed some of them on
# do is write out the document. # read.
for package in self.packages:
package.writeDescFile()
# The above writeDescFile() call should also update each
# package's element within the contents.xml document, so all
# we have to do now is write out the document.
self.contentsDoc.SaveFile() self.contentsDoc.SaveFile()
def getPackageVersion(self, key): def getPackageVersion(self, key):
@ -667,8 +673,6 @@ class PatchMaker:
if not self.buildPatch(pv, currentPv, package, filename): if not self.buildPatch(pv, currentPv, package, filename):
raise StandardError, "Couldn't build patch." raise StandardError, "Couldn't build patch."
package.writeDescFile()
def buildPatch(self, v1, v2, package, patchFilename): def buildPatch(self, v1, v2, package, patchFilename):
""" Builds a patch from PackageVersion v1 to PackageVersion """ Builds a patch from PackageVersion v1 to PackageVersion
v2, and stores it in patchFilename.pz. Returns true on v2, and stores it in patchFilename.pz. Returns true on