2
0
Эх сурвалжийг харах

Take copy of refs when invoking determine_wants callback.

This avoids breakage if the callback happens to change the value that was
passed in.

Signed-Off-By: Jelmer Vernooij <jelmer@samba.org>
Andi McClure 12 жил өмнө
parent
commit
34743ae11c
1 өөрчлөгдсөн 2 нэмэгдсэн , 2 устгасан
  1. 2 2
      dulwich/client.py

+ 2 - 2
dulwich/client.py

@@ -440,7 +440,7 @@ class TraditionalGitClient(GitClient):
         old_refs, server_capabilities = self._read_refs(proto)
         negotiated_capabilities = self._send_capabilities & server_capabilities
         try:
-            new_refs = determine_wants(old_refs)
+            new_refs = determine_wants(dict(old_refs))
         except:
             proto.write_pkt_line(None)
             raise
@@ -707,7 +707,7 @@ class HttpGitClient(GitClient):
         old_refs, server_capabilities = self._discover_references(
             "git-receive-pack", url)
         negotiated_capabilities = self._send_capabilities & server_capabilities
-        new_refs = determine_wants(old_refs)
+        new_refs = determine_wants(dict(old_refs))
         if new_refs is None:
             return old_refs
         if self.dumb: