commit - 54415d85f1bbe99a1740cbad8ec7727c205c913b
commit + 2bab8f23c6cf7e448895c3469a140f7f11bfb3e2
blob - e9bf1112512b6891de374aecc2893fbc0ea798da
blob + dc7a1dfd96f8cc504d523507e3ef74f41902f4b4
--- gotweb/gotweb.c
+++ gotweb/gotweb.c
static const struct got_error* cmp_tags(void *, int *,
struct got_reference *,
struct got_reference *);
-
-/* got_repo_resolve_commit_arg */
-static const struct got_error* resolve_commit_arg(struct got_object_id **,
- const char *, struct got_repository *);
static const struct got_error* match_object_id(struct got_object_id **,
char **, const char *r, int, int,
struct got_repository *);
got_object_tag_close(tag1);
if (tag2)
got_object_tag_close(tag2);
- return err;
-}
-
-static const struct got_error *
-resolve_commit_arg(struct got_object_id **commit_id,
- const char *commit_id_arg, struct got_repository *repo)
-{
- const struct got_error *err;
- struct got_reference *ref;
- struct got_tag_object *tag;
-
- err = got_repo_object_match_tag(&tag, commit_id_arg,
- GOT_OBJ_TYPE_COMMIT, repo);
- if (err == NULL) {
- *commit_id = got_object_id_dup(
- got_object_tag_get_object_id(tag));
- if (*commit_id == NULL)
- err = got_error_from_errno("got_object_id_dup");
- got_object_tag_close(tag);
- return err;
- } else if (err->code != GOT_ERR_NO_OBJ)
- return err;
-
- err = got_ref_open(&ref, repo, commit_id_arg, 0);
- if (err == NULL) {
- err = got_ref_resolve(commit_id, repo, ref);
- got_ref_close(ref);
- } else {
- if (err->code != GOT_ERR_NOT_REF)
- return err;
- err = got_repo_match_object_id_prefix(commit_id,
- commit_id_arg, GOT_OBJ_TYPE_COMMIT, repo);
- }
return err;
}
if (error)
goto done;
- error = resolve_commit_arg(&commit_id, commit_str, repo);
+ error = got_repo_resolve_commit_arg(&commit_id, commit_str, repo);
if (error)
goto done;
got_ref_close(head_ref);
} else
- error = resolve_commit_arg(&commit_id, commit_str, repo);
+ error = got_repo_resolve_commit_arg(&commit_id, commit_str,
+ repo);
if (error)
goto done;