X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=git-p4.py;h=60c73b6a374ccce59ef922c26704f8e5e244b7ef;hb=12a4aeaad8aa2071f9b20f6ac87454c5f6d2d4fb;hp=3991e7d1a7fc4d7206f8786a0d92ae5961ef0ef4;hpb=37801f0665623e354e91ddd9c0bd5a2a4530fa24;p=thirdparty%2Fgit.git diff --git a/git-p4.py b/git-p4.py index 3991e7d1a7..60c73b6a37 100755 --- a/git-p4.py +++ b/git-p4.py @@ -1160,13 +1160,11 @@ class LargeFileSystem(object): if contentsSize <= gitConfigInt('git-p4.largeFileCompressedThreshold'): return False contentTempFile = self.generateTempFile(contents) - compressedContentFile = tempfile.NamedTemporaryFile(prefix='git-p4-large-file', delete=False) - zf = zipfile.ZipFile(compressedContentFile.name, mode='w') - zf.write(contentTempFile, compress_type=zipfile.ZIP_DEFLATED) - zf.close() - compressedContentsSize = zf.infolist()[0].compress_size + compressedContentFile = tempfile.NamedTemporaryFile(prefix='git-p4-large-file', delete=True) + with zipfile.ZipFile(compressedContentFile, mode='w') as zf: + zf.write(contentTempFile, compress_type=zipfile.ZIP_DEFLATED) + compressedContentsSize = zf.infolist()[0].compress_size os.remove(contentTempFile) - os.remove(compressedContentFile.name) if compressedContentsSize > gitConfigInt('git-p4.largeFileCompressedThreshold'): return True return False @@ -3525,8 +3523,9 @@ class P4Sync(Command, P4UserMap): self.updateOptionDict(details) try: self.commit(details, self.extractFilesFromCommit(details), self.branch) - except IOError: + except IOError as err: print("IO error with git fast-import. Is your git version recent enough?") + print("IO error details: {}".format(err)) print(self.gitError.read()) def openStreams(self):