def patchrepo(ui, meta, parentctx, patchfp): store = patch.filestore(util.getfilestoresize(ui)) try: touched = set() backend = svnbackend(ui, meta.repo, parentctx, store) try: try: ret = patch.patchbackend(ui, backend, patchfp, 0, files=touched) except TypeError: # Mercurial >= 3.4 have an extra prefix parameter ret = patch.patchbackend(ui, backend, patchfp, 0, '', files=touched) if ret < 0: raise BadPatchApply('patching failed') if ret > 0: raise BadPatchApply('patching succeeded with fuzz') except patch.PatchError, e: raise BadPatchApply(str(e)) files = {} for f in touched: try: data, mode, copied = store.getfile(f) files[f] = data except IOError: files[f] = None return files
def patchrepo(ui, meta, parentctx, patchfp): store = patch.filestore(util.getfilestoresize(ui)) try: touched = set() backend = svnbackend(ui, meta.repo, parentctx, store) try: try: ret = patch.patchbackend(ui, backend, patchfp, 0, files=touched) except TypeError: # Mercurial >= 3.4 have an extra prefix parameter ret = patch.patchbackend(ui, backend, patchfp, 0, '', files=touched) if ret < 0: raise BadPatchApply('patching failed') if ret > 0: raise BadPatchApply('patching succeeded with fuzz') except patch.PatchError, e: raise BadPatchApply(str(e)) files = {} for f in touched: try: data, mode, copied = store.getfile(f) files[f] = data except IOError: files[f] = None return files
def clear(self): self.store = FileStore(util.getfilestoresize(self.ui)) self.added = set() self.deleted = {} self.rev = None self.execfiles = {} self.symlinks = {} # Map fully qualified destination file paths to module source path self.copies = {} self.emptybranches = {} self.externals = {} self.exception = None