Re: [PATCH 1/4] fast-{import,export}: use get_sha1_hex() directly
- From
Junio C Hamano <gitster@pobox.com>
- Date
- May 3, 2013, 21:50 UTC
- Message-ID
- <7vli7vybqg.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <1367555502-4706-2-git-send-email-felipe.contreras@gmail.com>
Felipe Contreras <felipe.contreras@gmail.com> writes:
> There's no point in calling get_sha1() if we know they are SHA-1s.
If we know they _have to be_ 40-hex object names, calling get_sha1() is not just pointless but outright wrong and these calls have to be get_sha1_hex().
Looks like a good change to me.
Show 69 quoted lines
>
> Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
> ---
> builtin/fast-export.c | 2 +-
> fast-import.c | 10 +++++-----
> 2 files changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/builtin/fast-export.c b/builtin/fast-export.c
> index d60d675..a4dee14 100644
> --- a/builtin/fast-export.c
> +++ b/builtin/fast-export.c
> @@ -621,7 +621,7 @@ static void import_marks(char *input_file)
>
> mark = strtoumax(line + 1, &mark_end, 10);
> if (!mark || mark_end == line + 1
> - || *mark_end != ' ' || get_sha1(mark_end + 1, sha1))
> + || *mark_end != ' ' || get_sha1_hex(mark_end + 1, sha1))
> die("corrupt mark line: %s", line);
>
> if (last_idnum < mark)
> diff --git a/fast-import.c b/fast-import.c
> index 5f539d7..e02f212 100644
> --- a/fast-import.c
> +++ b/fast-import.c
> @@ -1822,7 +1822,7 @@ static void read_marks(void)
> *end = 0;
> mark = strtoumax(line + 1, &end, 10);
> if (!mark || end == line + 1
> - || *end != ' ' || get_sha1(end + 1, sha1))
> + || *end != ' ' || get_sha1_hex(end + 1, sha1))
> die("corrupt mark line: %s", line);
> e = find_object(sha1);
> if (!e) {
> @@ -2490,7 +2490,7 @@ static void note_change_n(struct branch *b, unsigned char *old_fanout)
> if (commit_oe->type != OBJ_COMMIT)
> die("Mark :%" PRIuMAX " not a commit", commit_mark);
> hashcpy(commit_sha1, commit_oe->idx.sha1);
> - } else if (!get_sha1(p, commit_sha1)) {
> + } else if (!get_sha1_hex(p, commit_sha1)) {
> unsigned long size;
> char *buf = read_object_with_reference(commit_sha1,
> commit_type, &size, commit_sha1);
> @@ -2604,7 +2604,7 @@ static int parse_from(struct branch *b)
> free(buf);
> } else
> parse_from_existing(b);
> - } else if (!get_sha1(from, b->sha1))
> + } else if (!get_sha1_hex(from, b->sha1))
> parse_from_existing(b);
> else
> die("Invalid ref name or SHA1 expression: %s", from);
> @@ -2632,7 +2632,7 @@ static struct hash_list *parse_merge(unsigned int *count)
> if (oe->type != OBJ_COMMIT)
> die("Mark :%" PRIuMAX " not a commit", idnum);
> hashcpy(n->sha1, oe->idx.sha1);
> - } else if (!get_sha1(from, n->sha1)) {
> + } else if (!get_sha1_hex(from, n->sha1)) {
> unsigned long size;
> char *buf = read_object_with_reference(n->sha1,
> commit_type, &size, n->sha1);
> @@ -2792,7 +2792,7 @@ static void parse_new_tag(void)
> oe = find_mark(from_mark);
> type = oe->type;
> hashcpy(sha1, oe->idx.sha1);
> - } else if (!get_sha1(from, sha1)) {
> + } else if (!get_sha1_hex(from, sha1)) {
> struct object_entry *oe = find_object(sha1);
> if (!oe) {
> type = sha1_object_info(sha1, NULL);