Stefan Beller <sbeller@xxxxxxxxxx> writes: >> @@ -636,7 +636,7 @@ static int get_sha1_basic(const char *str, int len, unsigned char *sha1, >> int detached; >> >> if (interpret_nth_prior_checkout(str, len, &buf) > 0) { >> - detached = (buf.len == 40 && !get_sha1_hex(buf.buf, sha1)); >> + detached = (!get_oid_hex(buf.buf, oid)); > > omitting the length check here? Good eyes. It probably should check with the possible oid lengths.