Skip to content

Commit

Permalink
Ignore empty info in diff line
Browse files Browse the repository at this point in the history
  • Loading branch information
dwapstra committed Sep 27, 2022
1 parent b27c41a commit 41003c5
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 0 deletions.
3 changes: 3 additions & 0 deletions git/diff.py
Expand Up @@ -574,6 +574,9 @@ def _handle_diff_line(lines_bytes: bytes, repo: "Repo", index: DiffIndex) -> Non
_, _, lines = lines.partition(":")

for line in lines.split("\x00:"):
if not line:
# The line data is empty, skip
continue
meta, _, path = line.partition("\x00")
path = path.rstrip("\x00")
a_blob_id: Optional[str]
Expand Down
6 changes: 6 additions & 0 deletions test/test_diff.py
Expand Up @@ -240,6 +240,12 @@ def test_diff_file_with_colon(self):
output = fixture("diff_file_with_colon")
res = []
Diff._handle_diff_line(output, None, res)
self.assertEqual(len(res), 3)

def test_empty_diff(self):
res = []
Diff._handle_diff_line(b"", None, res)
self.assertEqual(res, [])

def test_diff_initial_commit(self):
initial_commit = self.rorepo.commit("33ebe7acec14b25c5f84f35a664803fcab2f7781")
Expand Down

0 comments on commit 41003c5

Please sign in to comment.