summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVicent Martí <vicent@github.com>2013-08-19 02:16:02 -0700
committerVicent Martí <vicent@github.com>2013-08-19 02:16:02 -0700
commit1c1b4e8a15b059ae8feb61342de0408755d849ec (patch)
tree828f0b3641e57071fbe4ef4c077946d10a693f07
parent9abf7ea797c34771f0ff63d1ccd7f87370f6c66c (diff)
parentd19dd9cf73f1ebec135faf9fd6e702b09d3ee723 (diff)
downloadlibgit2-1c1b4e8a15b059ae8feb61342de0408755d849ec.tar.gz
Merge pull request #1792 from libgit2/ntk/bug/prefix_size
odb: Straighten oid prefix handling
-rw-r--r--src/odb_loose.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/odb_loose.c b/src/odb_loose.c
index 76ed8e232..90e258793 100644
--- a/src/odb_loose.c
+++ b/src/odb_loose.c
@@ -641,10 +641,12 @@ static int loose_backend__read_prefix(
{
int error = 0;
+ assert(len <= GIT_OID_HEXSZ);
+
if (len < GIT_OID_MINPREFIXLEN)
error = git_odb__error_ambiguous("prefix length too short");
- else if (len >= GIT_OID_HEXSZ) {
+ else if (len == GIT_OID_HEXSZ) {
/* We can fall back to regular read method */
error = loose_backend__read(buffer_p, len_p, type_p, backend, short_oid);
if (!error)