Commit fad251ae by Vicent Martí

Merge pull request #1267 from libgit2/no-newline

Handle packed peeled objects without trailing newlines
parents 4c723a32 28b1cdf3
...@@ -328,7 +328,7 @@ static int packed_parse_peel( ...@@ -328,7 +328,7 @@ static int packed_parse_peel(
if (git__prefixcmp(tag_ref->name, GIT_REFS_TAGS_DIR) != 0) if (git__prefixcmp(tag_ref->name, GIT_REFS_TAGS_DIR) != 0)
goto corrupt; goto corrupt;
if (buffer + GIT_OID_HEXSZ >= buffer_end) if (buffer + GIT_OID_HEXSZ > buffer_end)
goto corrupt; goto corrupt;
/* Is this a valid object id? */ /* Is this a valid object id? */
...@@ -339,10 +339,13 @@ static int packed_parse_peel( ...@@ -339,10 +339,13 @@ static int packed_parse_peel(
if (*buffer == '\r') if (*buffer == '\r')
buffer++; buffer++;
if (*buffer != '\n') if (*buffer == '\n')
buffer++;
if (buffer != buffer_end)
goto corrupt; goto corrupt;
*buffer_out = buffer + 1; *buffer_out = buffer;
return 0; return 0;
corrupt: corrupt:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment