##// END OF EJS Templates
gzip: indent the custom Gzip code...
marmoute -
r44981:a23b859a stable
parent child Browse files
Show More
@@ -135,34 +135,36 b' class tarit(object):'
135 '''write archive to tar file or stream. can write uncompressed,
135 '''write archive to tar file or stream. can write uncompressed,
136 or compress with gzip or bzip2.'''
136 or compress with gzip or bzip2.'''
137
137
138 class GzipFileWithTime(gzip.GzipFile):
138 if True:
139 def __init__(self, *args, **kw):
139
140 timestamp = None
140 class GzipFileWithTime(gzip.GzipFile):
141 if 'mtime' in kw:
141 def __init__(self, *args, **kw):
142 timestamp = kw.pop('mtime')
142 timestamp = None
143 if timestamp is None:
143 if 'mtime' in kw:
144 self.timestamp = time.time()
144 timestamp = kw.pop('mtime')
145 else:
145 if timestamp is None:
146 self.timestamp = timestamp
146 self.timestamp = time.time()
147 gzip.GzipFile.__init__(self, *args, **kw)
147 else:
148 self.timestamp = timestamp
149 gzip.GzipFile.__init__(self, *args, **kw)
148
150
149 def _write_gzip_header(self):
151 def _write_gzip_header(self):
150 self.fileobj.write(b'\037\213') # magic header
152 self.fileobj.write(b'\037\213') # magic header
151 self.fileobj.write(b'\010') # compression method
153 self.fileobj.write(b'\010') # compression method
152 fname = self.name
154 fname = self.name
153 if fname and fname.endswith(b'.gz'):
155 if fname and fname.endswith(b'.gz'):
154 fname = fname[:-3]
156 fname = fname[:-3]
155 flags = 0
157 flags = 0
156 if fname:
158 if fname:
157 flags = gzip.FNAME # pytype: disable=module-attr
159 flags = gzip.FNAME # pytype: disable=module-attr
158 self.fileobj.write(pycompat.bytechr(flags))
160 self.fileobj.write(pycompat.bytechr(flags))
159 gzip.write32u( # pytype: disable=module-attr
161 gzip.write32u( # pytype: disable=module-attr
160 self.fileobj, int(self.timestamp)
162 self.fileobj, int(self.timestamp)
161 )
163 )
162 self.fileobj.write(b'\002')
164 self.fileobj.write(b'\002')
163 self.fileobj.write(b'\377')
165 self.fileobj.write(b'\377')
164 if fname:
166 if fname:
165 self.fileobj.write(fname + b'\000')
167 self.fileobj.write(fname + b'\000')
166
168
167 def __init__(self, dest, mtime, kind=b''):
169 def __init__(self, dest, mtime, kind=b''):
168 self.mtime = mtime
170 self.mtime = mtime
General Comments 0
You need to be logged in to leave comments. Login now