summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/revparse.c2
-rw-r--r--tests-clar/refs/revparse.c2
2 files changed, 3 insertions, 1 deletions
diff --git a/src/revparse.c b/src/revparse.c
index dd3886e2d..5050bdf1b 100644
--- a/src/revparse.c
+++ b/src/revparse.c
@@ -485,7 +485,7 @@ static int handle_caret_syntax(git_object **out, git_repository *repo, git_objec
}
if (git_commit_parent(&commit, commit, n-1) < 0) {
- return GIT_ERROR;
+ return GIT_ENOTFOUND;
}
*out = (git_object*)commit;
diff --git a/tests-clar/refs/revparse.c b/tests-clar/refs/revparse.c
index e2e82cf82..c71e6d844 100644
--- a/tests-clar/refs/revparse.c
+++ b/tests-clar/refs/revparse.c
@@ -85,6 +85,8 @@ void test_refs_revparse__nth_parent(void)
test_object("be3563a^1^1", "4a202b346bb0fb0db7eff3cffeb3c70babbd2045");
test_object("be3563a^2^1", "5b5b025afb0b4c913b4c338a42934a3863bf3644");
test_object("be3563a^0", "be3563ae3f795b2b4353bcce3a527ad0a4f7f644");
+
+ cl_assert_equal_i(GIT_ENOTFOUND, git_revparse_single(&g_obj, g_repo, "be3563a^42"));
}
void test_refs_revparse__not_tag(void)