浏览代码

Remove read_zlib in favor of read_zlib_chunks.

Jelmer Vernooij 15 年之前
父节点
当前提交
ca9e1e2e3b
共有 2 个文件被更改,包括 9 次插入21 次删除
  1. 6 18
      dulwich/pack.py
  2. 3 3
      dulwich/tests/test_pack.py

+ 6 - 18
dulwich/pack.py

@@ -103,21 +103,6 @@ def read_zlib_chunks(read, buffer_size=4096):
     return ret, comp_len, obj.unused_data
 
 
-def read_zlib(read, dec_size):
-    """Read zlib-compressed data from a buffer.
-    
-    :param read: Read function
-    :param dec_size: Size of the decompressed buffer
-    :return: Uncompressed buffer, compressed buffer length and unused read
-        data.
-    """
-    ret, comp_len, unused = read_zlib_chunks(read)
-    x = "".join(ret)
-    assert len(x) == dec_size
-    return x, comp_len, unused
-
-
-
 def iter_sha1(iter):
     """Return the hexdigest of the SHA1 over a set of names.
     
@@ -438,17 +423,20 @@ def unpack_object(read):
             delta_base_offset += 1
             delta_base_offset <<= 7
             delta_base_offset += (byte & 0x7f)
-        uncomp, comp_len, unused = read_zlib(read, size)
+        uncomp_chunks, comp_len, unused = read_zlib_chunks(read, size)
+        uncomp = "".join(uncomp_chunks)
         assert size == len(uncomp)
         return type, (delta_base_offset, uncomp), comp_len+raw_base, unused
     elif type == 7: # ref delta
         basename = read(20)
         raw_base += 20
-        uncomp, comp_len, unused = read_zlib(read, size)
+        uncomp_chunks, comp_len, unused = read_zlib_chunks(read, size)
+        uncomp = "".join(uncomp_chunks)
         assert size == len(uncomp)
         return type, (basename, uncomp), comp_len+raw_base, unused
     else:
-        uncomp, comp_len, unused = read_zlib(read, size)
+        uncomp_chunks, comp_len, unused = read_zlib_chunks(read, size)
+        uncomp = "".join(uncomp_chunks)
         assert len(uncomp) == size
         return type, uncomp, comp_len+raw_base, unused
 

+ 3 - 3
dulwich/tests/test_pack.py

@@ -35,7 +35,7 @@ from dulwich.pack import (
     create_delta,
     load_pack_index,
     hex_to_sha,
-    read_zlib,
+    read_zlib_chunks,
     sha_to_hex,
     write_pack_index_v1,
     write_pack_index_v2,
@@ -283,6 +283,6 @@ TEST_COMP1 = """\x78\x9c\x9d\x8e\xc1\x0a\xc2\x30\x10\x44\xef\xf9\x8a\xbd\xa9\x08
 class ZlibTests(unittest.TestCase):
 
     def test_simple_decompress(self):
-        self.assertEquals(("tree 4ada885c9196b6b6fa08744b5862bf92896fc002\nparent None\nauthor Jelmer Vernooij <jelmer@samba.org> 1228980214 +0000\ncommitter Jelmer Vernooij <jelmer@samba.org> 1228980214 +0000\n\nProvide replacement for mmap()'s offset argument.", 158, 'Z'), 
-        read_zlib(StringIO(TEST_COMP1).read, 229))
+        self.assertEquals((["tree 4ada885c9196b6b6fa08744b5862bf92896fc002\nparent None\nauthor Jelmer Vernooij <jelmer@samba.org> 1228980214 +0000\ncommitter Jelmer Vernooij <jelmer@samba.org> 1228980214 +0000\n\nProvide replacement for mmap()'s offset argument."], 158, 'Z'), 
+        read_zlib_chunks(StringIO(TEST_COMP1).read, 229))