Strip excess whitespace from capabilities lines.
authorDave Borowitz <dborowitz@google.com>
Wed, 10 Mar 2010 20:36:51 +0000 (12:36 -0800)
committerDave Borowitz <dborowitz@google.com>
Fri, 16 Apr 2010 18:56:53 +0000 (11:56 -0700)
C git separates client capabilities during send-pack with both \0 and a
space, so we need to handle that as well. This change is significantly
more lenient, but the cgit behavior is not well-documented, so there may
be more corner cases. It's hard to imagine that the extra strip() will
actually result in capabilities lists being parsed incorrectly.

Change-Id: I74b734e146add683b4c1e4ea6b575f458ec25de7

dulwich/protocol.py

index 5525f62a0fd1bdf8a35df4bc4ef7a4c18502de8a..e72b9e05eb8bc25ad513b1038c7a3b64c1fc88fb 100644 (file)
@@ -171,7 +171,7 @@ def extract_capabilities(text):
     if not "\0" in text:
         return text, []
     text, capabilities = text.rstrip().split("\0")
-    return (text, capabilities.split(" "))
+    return (text, capabilities.strip().split(" "))
 
 
 def extract_want_line_capabilities(text):