Browse Source

sha1_file: convert index_path to struct object_id

Convert all remaining callers as well.

Signed-off-by: Patryk Obara <patryk.obara@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Patryk Obara 8 years ago committed by Junio C Hamano
parent
commit
98e019b067
  1. 2
      builtin/update-index.c
  2. 2
      cache.h
  3. 2
      diff.c
  4. 2
      notes-merge.c
  5. 2
      read-cache.c
  6. 10
      sha1_file.c

2
builtin/update-index.c

@ -280,7 +280,7 @@ static int add_one_path(const struct cache_entry *old, const char *path, int len @@ -280,7 +280,7 @@ static int add_one_path(const struct cache_entry *old, const char *path, int len
fill_stat_cache_info(ce, st);
ce->ce_mode = ce_mode_from_stat(old, st->st_mode);

if (index_path(ce->oid.hash, path, st,
if (index_path(&ce->oid, path, st,
info_only ? 0 : HASH_WRITE_OBJECT)) {
free(ce);
return -1;

2
cache.h

@ -685,7 +685,7 @@ extern int ie_modified(const struct index_state *, const struct cache_entry *, s @@ -685,7 +685,7 @@ extern int ie_modified(const struct index_state *, const struct cache_entry *, s
#define HASH_WRITE_OBJECT 1
#define HASH_FORMAT_CHECK 2
extern int index_fd(unsigned char *sha1, int fd, struct stat *st, enum object_type type, const char *path, unsigned flags);
extern int index_path(unsigned char *sha1, const char *path, struct stat *st, unsigned flags);
extern int index_path(struct object_id *oid, const char *path, struct stat *st, unsigned flags);

/*
* Record to sd the data from st that we use to check whether a file

2
diff.c

@ -3246,7 +3246,7 @@ static void diff_fill_oid_info(struct diff_filespec *one) @@ -3246,7 +3246,7 @@ static void diff_fill_oid_info(struct diff_filespec *one)
}
if (lstat(one->path, &st) < 0)
die_errno("stat '%s'", one->path);
if (index_path(one->oid.hash, one->path, &st, 0))
if (index_path(&one->oid, one->path, &st, 0))
die("cannot hash %s", one->path);
}
}

2
notes-merge.c

@ -709,7 +709,7 @@ int notes_merge_commit(struct notes_merge_options *o, @@ -709,7 +709,7 @@ int notes_merge_commit(struct notes_merge_options *o,
/* write file as blob, and add to partial_tree */
if (stat(path.buf, &st))
die_errno("Failed to stat '%s'", path.buf);
if (index_path(blob_oid.hash, path.buf, &st, HASH_WRITE_OBJECT))
if (index_path(&blob_oid, path.buf, &st, HASH_WRITE_OBJECT))
die("Failed to write blob object from '%s'", path.buf);
if (add_note(partial_tree, &obj_oid, &blob_oid, NULL))
die("Failed to add resolved note '%s' to notes tree",

2
read-cache.c

@ -689,7 +689,7 @@ int add_to_index(struct index_state *istate, const char *path, struct stat *st, @@ -689,7 +689,7 @@ int add_to_index(struct index_state *istate, const char *path, struct stat *st,
return 0;
}
if (!intent_only) {
if (index_path(ce->oid.hash, path, st, HASH_WRITE_OBJECT)) {
if (index_path(&ce->oid, path, st, HASH_WRITE_OBJECT)) {
free(ce);
return error("unable to index file %s", path);
}

10
sha1_file.c

@ -3686,7 +3686,7 @@ int index_fd(unsigned char *sha1, int fd, struct stat *st, @@ -3686,7 +3686,7 @@ int index_fd(unsigned char *sha1, int fd, struct stat *st,
return ret;
}

int index_path(unsigned char *sha1, const char *path, struct stat *st, unsigned flags)
int index_path(struct object_id *oid, const char *path, struct stat *st, unsigned flags)
{
int fd;
struct strbuf sb = STRBUF_INIT;
@ -3696,7 +3696,7 @@ int index_path(unsigned char *sha1, const char *path, struct stat *st, unsigned @@ -3696,7 +3696,7 @@ int index_path(unsigned char *sha1, const char *path, struct stat *st, unsigned
fd = open(path, O_RDONLY);
if (fd < 0)
return error_errno("open(\"%s\")", path);
if (index_fd(sha1, fd, st, OBJ_BLOB, path, flags) < 0)
if (index_fd(oid->hash, fd, st, OBJ_BLOB, path, flags) < 0)
return error("%s: failed to insert into database",
path);
break;
@ -3704,14 +3704,14 @@ int index_path(unsigned char *sha1, const char *path, struct stat *st, unsigned @@ -3704,14 +3704,14 @@ int index_path(unsigned char *sha1, const char *path, struct stat *st, unsigned
if (strbuf_readlink(&sb, path, st->st_size))
return error_errno("readlink(\"%s\")", path);
if (!(flags & HASH_WRITE_OBJECT))
hash_sha1_file(sb.buf, sb.len, blob_type, sha1);
else if (write_sha1_file(sb.buf, sb.len, blob_type, sha1))
hash_sha1_file(sb.buf, sb.len, blob_type, oid->hash);
else if (write_sha1_file(sb.buf, sb.len, blob_type, oid->hash))
return error("%s: failed to insert into database",
path);
strbuf_release(&sb);
break;
case S_IFDIR:
return resolve_gitlink_ref(path, "HEAD", sha1);
return resolve_gitlink_ref(path, "HEAD", oid->hash);
default:
return error("%s: unsupported file type", path);
}

Loading…
Cancel
Save