Selaa lähdekoodia

Don't need custom sort fn. Can't iterate over objects twice - its an iter :(

John Carr 16 vuotta sitten
vanhempi
commit
c597c7cc75
1 muutettua tiedostoa jossa 4 lisäystä ja 9 poistoa
  1. 4 9
      dulwich/pack.py

+ 4 - 9
dulwich/pack.py

@@ -583,23 +583,18 @@ def write_pack_data(f, objects, num_objects):
     :param objects: List of objects to write.
     :return: List with (name, offset, crc32 checksum) entries, pack checksum
     """
-    def sort_fn(x,y):
-        for i in range(1, 6):
-            if x[i] < y[i]:
-                return -1
-            elif x[i] > y[i]:
-                return 1
-        return 0
+    recency = []
     magic = []
     for o in objects:
         magic.append( (o, o._num_type, "filename", 1, len(o.as_raw_string()[1])) )
-    magic.sort(cmp=sort_fn)
+        recency.append(o)
+    magic.sort()
     entries = []
     f = SHA1Writer(f)
     f.write("PACK")               # Pack header
     f.write(struct.pack(">L", 2)) # Pack version
     f.write(struct.pack(">L", num_objects)) # Number of objects in pack
-    for o in objects:
+    for o in recency:
         sha1 = o.sha().digest()
         crc32 = o.crc32()
         # FIXME: Delta !