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>
This commit is contained in:
parent
bebfecb94c
commit
98e019b067
@ -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);
|
fill_stat_cache_info(ce, st);
|
||||||
ce->ce_mode = ce_mode_from_stat(old, st->st_mode);
|
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)) {
|
info_only ? 0 : HASH_WRITE_OBJECT)) {
|
||||||
free(ce);
|
free(ce);
|
||||||
return -1;
|
return -1;
|
||||||
|
2
cache.h
2
cache.h
@ -685,7 +685,7 @@ extern int ie_modified(const struct index_state *, const struct cache_entry *, s
|
|||||||
#define HASH_WRITE_OBJECT 1
|
#define HASH_WRITE_OBJECT 1
|
||||||
#define HASH_FORMAT_CHECK 2
|
#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_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
|
* Record to sd the data from st that we use to check whether a file
|
||||||
|
2
diff.c
2
diff.c
@ -3246,7 +3246,7 @@ static void diff_fill_oid_info(struct diff_filespec *one)
|
|||||||
}
|
}
|
||||||
if (lstat(one->path, &st) < 0)
|
if (lstat(one->path, &st) < 0)
|
||||||
die_errno("stat '%s'", one->path);
|
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);
|
die("cannot hash %s", one->path);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -709,7 +709,7 @@ int notes_merge_commit(struct notes_merge_options *o,
|
|||||||
/* write file as blob, and add to partial_tree */
|
/* write file as blob, and add to partial_tree */
|
||||||
if (stat(path.buf, &st))
|
if (stat(path.buf, &st))
|
||||||
die_errno("Failed to stat '%s'", path.buf);
|
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);
|
die("Failed to write blob object from '%s'", path.buf);
|
||||||
if (add_note(partial_tree, &obj_oid, &blob_oid, NULL))
|
if (add_note(partial_tree, &obj_oid, &blob_oid, NULL))
|
||||||
die("Failed to add resolved note '%s' to notes tree",
|
die("Failed to add resolved note '%s' to notes tree",
|
||||||
|
@ -689,7 +689,7 @@ int add_to_index(struct index_state *istate, const char *path, struct stat *st,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
if (!intent_only) {
|
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);
|
free(ce);
|
||||||
return error("unable to index file %s", path);
|
return error("unable to index file %s", path);
|
||||||
}
|
}
|
||||||
|
10
sha1_file.c
10
sha1_file.c
@ -3686,7 +3686,7 @@ int index_fd(unsigned char *sha1, int fd, struct stat *st,
|
|||||||
return ret;
|
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;
|
int fd;
|
||||||
struct strbuf sb = STRBUF_INIT;
|
struct strbuf sb = STRBUF_INIT;
|
||||||
@ -3696,7 +3696,7 @@ int index_path(unsigned char *sha1, const char *path, struct stat *st, unsigned
|
|||||||
fd = open(path, O_RDONLY);
|
fd = open(path, O_RDONLY);
|
||||||
if (fd < 0)
|
if (fd < 0)
|
||||||
return error_errno("open(\"%s\")", path);
|
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",
|
return error("%s: failed to insert into database",
|
||||||
path);
|
path);
|
||||||
break;
|
break;
|
||||||
@ -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))
|
if (strbuf_readlink(&sb, path, st->st_size))
|
||||||
return error_errno("readlink(\"%s\")", path);
|
return error_errno("readlink(\"%s\")", path);
|
||||||
if (!(flags & HASH_WRITE_OBJECT))
|
if (!(flags & HASH_WRITE_OBJECT))
|
||||||
hash_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, sha1))
|
else if (write_sha1_file(sb.buf, sb.len, blob_type, oid->hash))
|
||||||
return error("%s: failed to insert into database",
|
return error("%s: failed to insert into database",
|
||||||
path);
|
path);
|
||||||
strbuf_release(&sb);
|
strbuf_release(&sb);
|
||||||
break;
|
break;
|
||||||
case S_IFDIR:
|
case S_IFDIR:
|
||||||
return resolve_gitlink_ref(path, "HEAD", sha1);
|
return resolve_gitlink_ref(path, "HEAD", oid->hash);
|
||||||
default:
|
default:
|
||||||
return error("%s: unsupported file type", path);
|
return error("%s: unsupported file type", path);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user