зеркало из https://github.com/microsoft/git.git
read_blob_data_from_index(): optionally return the size of blob data
This allows for optionally getting the size of the returned data and will be used in a follow-up patch. Signed-off-by: Lukas Fleischer <git@cryptocrack.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Родитель
29fb37b272
Коммит
ff36682505
2
attr.c
2
attr.c
|
@ -387,7 +387,7 @@ static struct attr_stack *read_attr_from_index(const char *path, int macro_ok)
|
|||
char *buf, *sp;
|
||||
int lineno = 0;
|
||||
|
||||
buf = read_blob_data_from_index(use_index ? use_index : &the_index, path);
|
||||
buf = read_blob_data_from_index(use_index ? use_index : &the_index, path, NULL);
|
||||
if (!buf)
|
||||
return NULL;
|
||||
|
||||
|
|
4
cache.h
4
cache.h
|
@ -307,7 +307,7 @@ extern void free_name_hash(struct index_state *istate);
|
|||
#define resolve_undo_clear() resolve_undo_clear_index(&the_index)
|
||||
#define unmerge_cache_entry_at(at) unmerge_index_entry_at(&the_index, at)
|
||||
#define unmerge_cache(pathspec) unmerge_index(&the_index, pathspec)
|
||||
#define read_blob_data_from_cache(path) read_blob_data_from_index(&the_index, (path))
|
||||
#define read_blob_data_from_cache(path, sz) read_blob_data_from_index(&the_index, (path), (sz))
|
||||
#endif
|
||||
|
||||
enum object_type {
|
||||
|
@ -453,7 +453,7 @@ extern int add_file_to_index(struct index_state *, const char *path, int flags);
|
|||
extern struct cache_entry *make_cache_entry(unsigned int mode, const unsigned char *sha1, const char *path, int stage, int refresh);
|
||||
extern int ce_same_name(struct cache_entry *a, struct cache_entry *b);
|
||||
extern int index_name_is_other(const struct index_state *, const char *, int);
|
||||
extern void *read_blob_data_from_index(struct index_state *, const char *);
|
||||
extern void *read_blob_data_from_index(struct index_state *, const char *, unsigned long *);
|
||||
|
||||
/* do stat comparison even if CE_VALID is true */
|
||||
#define CE_MATCH_IGNORE_VALID 01
|
||||
|
|
|
@ -1896,7 +1896,7 @@ int index_name_is_other(const struct index_state *istate, const char *name,
|
|||
return 1;
|
||||
}
|
||||
|
||||
void *read_blob_data_from_index(struct index_state *istate, const char *path)
|
||||
void *read_blob_data_from_index(struct index_state *istate, const char *path, unsigned long *size)
|
||||
{
|
||||
int pos, len;
|
||||
unsigned long sz;
|
||||
|
@ -1925,5 +1925,7 @@ void *read_blob_data_from_index(struct index_state *istate, const char *path)
|
|||
free(data);
|
||||
return NULL;
|
||||
}
|
||||
if (size)
|
||||
*size = sz;
|
||||
return data;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче