Martin Koegler <[email protected]> writes:
> From: Martin Koegler <[email protected]>
>
> Signed-off-by: Martin Koegler <[email protected]>
> ---
Please do not start your patch series from 5/9 when there is no 1/9,
2/9, 3/9, and 4/9. It is seriously confusing.
I am guessing that you are trying to split the series into
manageable pieces by going per call graph and codeflow. I think it
is a more sensible approach than a single huge ball of wax we saw
earlier.
It may take me a while to get back to this topic before I finish
reviewing other new topics in flight and also merging down existing
topics so that the codebase will become reasonably stable for a
topic that is invasive like this one can safely land. Please be
patient.
Thanks.
> cache.h | 16 +++++++--------
> sha1_file.c | 68
> ++++++++++++++++++++++++++++++-------------------------------
> streaming.c | 2 +-
> 3 files changed, 43 insertions(+), 43 deletions(-)
>
> diff --git a/cache.h b/cache.h
> index 9185763..9322303 100644
> --- a/cache.h
> +++ b/cache.h
> @@ -1189,15 +1189,15 @@ static inline const unsigned char
> *lookup_replace_object(const unsigned char *sh
>
> /* Read and unpack a sha1 file into memory, write memory to a sha1 file */
> extern int sha1_object_info(const unsigned char *, size_t *);
> -extern int hash_sha1_file(const void *buf, unsigned long len, const char
> *type, unsigned char *sha1);
> -extern int write_sha1_file(const void *buf, unsigned long len, const char
> *type, unsigned char *return_sha1);
> -extern int hash_sha1_file_literally(const void *buf, unsigned long len,
> const char *type, unsigned char *sha1, unsigned flags);
> -extern int pretend_sha1_file(void *, unsigned long, enum object_type,
> unsigned char *);
> +extern int hash_sha1_file(const void *buf, size_t len, const char *type,
> unsigned char *sha1);
> +extern int write_sha1_file(const void *buf, size_t len, const char *type,
> unsigned char *return_sha1);
> +extern int hash_sha1_file_literally(const void *buf, size_t len, const char
> *type, unsigned char *sha1, unsigned flags);
> +extern int pretend_sha1_file(void *, size_t, enum object_type, unsigned char
> *);
> extern int force_object_loose(const unsigned char *sha1, time_t mtime);
> extern int git_open_cloexec(const char *name, int flags);
> #define git_open(name) git_open_cloexec(name, O_RDONLY)
> -extern void *map_sha1_file(const unsigned char *sha1, unsigned long *size);
> -extern int unpack_sha1_header(git_zstream *stream, unsigned char *map,
> unsigned long mapsize, void *buffer, unsigned long bufsiz);
> +extern void *map_sha1_file(const unsigned char *sha1, size_t *size);
> +extern int unpack_sha1_header(git_zstream *stream, unsigned char *map,
> size_t mapsize, void *buffer, size_t bufsiz);
> extern int parse_sha1_header(const char *hdr, size_t *sizep);
>
> /* global flag to enable extra checks when accessing packed objects */
> @@ -1723,8 +1723,8 @@ extern off_t find_pack_entry_one(const unsigned char
> *sha1, struct packed_git *)
>
> extern int is_pack_valid(struct packed_git *);
> extern void *unpack_entry(struct packed_git *, off_t, enum object_type *,
> size_t *);
> -extern unsigned long unpack_object_header_buffer(const unsigned char *buf,
> unsigned long len, enum object_type *type, size_t *sizep);
> -extern unsigned long get_size_from_delta(struct packed_git *, struct
> pack_window **, off_t);
> +extern size_t unpack_object_header_buffer(const unsigned char *buf, size_t
> len, enum object_type *type, size_t *sizep);
> +extern size_t get_size_from_delta(struct packed_git *, struct pack_window
> **, off_t);
> extern int unpack_object_header(struct packed_git *, struct pack_window **,
> off_t *, size_t *);
>
> /*
> diff --git a/sha1_file.c b/sha1_file.c
> index 3428172..1b3efea 100644
> --- a/sha1_file.c
> +++ b/sha1_file.c
> @@ -51,7 +51,7 @@ static struct cached_object {
> unsigned char sha1[20];
> enum object_type type;
> void *buf;
> - unsigned long size;
> + size_t size;
> } *cached_objects;
> static int cached_object_nr, cached_object_alloc;
>
> @@ -818,8 +818,8 @@ static int check_packed_git_idx(const char *path, struct
> packed_git *p)
> * variable sized table containing 8-byte entries
> * for offsets larger than 2^31.
> */
> - unsigned long min_size = 8 + 4*256 + nr*(20 + 4 + 4) + 20 + 20;
> - unsigned long max_size = min_size;
> + size_t min_size = 8 + 4*256 + nr*(20 + 4 + 4) + 20 + 20;
> + size_t max_size = min_size;
> if (nr)
> max_size += (nr - 1)*8;
> if (idx_size < min_size || idx_size > max_size) {
> @@ -1763,7 +1763,7 @@ static int open_sha1_file(const unsigned char *sha1,
> const char **path)
> */
> static void *map_sha1_file_1(const char *path,
> const unsigned char *sha1,
> - unsigned long *size)
> + size_t *size)
> {
> void *map;
> int fd;
> @@ -1790,13 +1790,13 @@ static void *map_sha1_file_1(const char *path,
> return map;
> }
>
> -void *map_sha1_file(const unsigned char *sha1, unsigned long *size)
> +void *map_sha1_file(const unsigned char *sha1, size_t *size)
> {
> return map_sha1_file_1(NULL, sha1, size);
> }
>
> -unsigned long unpack_object_header_buffer(const unsigned char *buf,
> - unsigned long len, enum object_type *type, size_t *sizep)
> +size_t unpack_object_header_buffer(const unsigned char *buf,
> + size_t len, enum object_type *type, size_t
> *sizep)
> {
> unsigned shift;
> size_t size, c;
> @@ -1821,8 +1821,8 @@ unsigned long unpack_object_header_buffer(const
> unsigned char *buf,
> }
>
> static int unpack_sha1_short_header(git_zstream *stream,
> - unsigned char *map, unsigned long mapsize,
> - void *buffer, unsigned long bufsiz)
> + unsigned char *map, size_t mapsize,
> + void *buffer, size_t bufsiz)
> {
> /* Get the data stream */
> memset(stream, 0, sizeof(*stream));
> @@ -1836,8 +1836,8 @@ static int unpack_sha1_short_header(git_zstream *stream,
> }
>
> int unpack_sha1_header(git_zstream *stream,
> - unsigned char *map, unsigned long mapsize,
> - void *buffer, unsigned long bufsiz)
> + unsigned char *map, size_t mapsize,
> + void *buffer, size_t bufsiz)
> {
> int status = unpack_sha1_short_header(stream, map, mapsize,
> buffer, bufsiz);
> @@ -1852,8 +1852,8 @@ int unpack_sha1_header(git_zstream *stream,
> }
>
> static int unpack_sha1_header_to_strbuf(git_zstream *stream, unsigned char
> *map,
> - unsigned long mapsize, void *buffer,
> - unsigned long bufsiz, struct strbuf
> *header)
> + size_t mapsize, void *buffer,
> + size_t bufsiz, struct strbuf *header)
> {
> int status;
>
> @@ -1887,11 +1887,11 @@ static int unpack_sha1_header_to_strbuf(git_zstream
> *stream, unsigned char *map,
> return -1;
> }
>
> -static void *unpack_sha1_rest(git_zstream *stream, void *buffer, unsigned
> long size, const unsigned char *sha1)
> +static void *unpack_sha1_rest(git_zstream *stream, void *buffer, size_t
> size, const unsigned char *sha1)
> {
> int bytes = strlen(buffer) + 1;
> unsigned char *buf = xmallocz(size);
> - unsigned long n;
> + size_t n;
> int status = Z_OK;
>
> n = stream->total_out - bytes;
> @@ -1941,7 +1941,7 @@ static int parse_sha1_header_extended(const char *hdr,
> struct object_info *oi,
> unsigned int flags)
> {
> const char *type_buf = hdr;
> - unsigned long size;
> + size_t size;
> int type, type_len = 0;
>
> /*
> @@ -2006,9 +2006,9 @@ int parse_sha1_header(const char *hdr, size_t *sizep)
> return parse_sha1_header_extended(hdr, &oi, 0);
> }
>
> -unsigned long get_size_from_delta(struct packed_git *p,
> - struct pack_window **w_curs,
> - off_t curpos)
> +size_t get_size_from_delta(struct packed_git *p,
> + struct pack_window **w_curs,
> + off_t curpos)
> {
> const unsigned char *data;
> unsigned char delta_head[20], *in;
> @@ -2242,7 +2242,7 @@ struct delta_base_cache_entry {
> struct delta_base_cache_key key;
> struct list_head lru;
> void *data;
> - unsigned long size;
> + size_t size;
> enum object_type type;
> };
>
> @@ -2339,7 +2339,7 @@ void clear_delta_base_cache(void)
> }
>
> static void add_delta_base_cache(struct packed_git *p, off_t base_offset,
> - void *base, unsigned long base_size, enum object_type type)
> + void *base, size_t base_size, enum object_type type)
> {
> struct delta_base_cache_entry *ent = xmalloc(sizeof(*ent));
> struct list_head *lru, *tmp;
> @@ -2453,7 +2453,7 @@ int packed_object_info(struct packed_git *p, off_t
> obj_offset,
> static void *unpack_compressed_entry(struct packed_git *p,
> struct pack_window **w_curs,
> off_t curpos,
> - unsigned long size)
> + size_t size)
> {
> int st;
> git_zstream stream;
> @@ -2500,7 +2500,7 @@ int do_check_packed_object_crc;
> struct unpack_entry_stack_ent {
> off_t obj_offset;
> off_t curpos;
> - unsigned long size;
> + size_t size;
> };
>
> void *unpack_entry(struct packed_git *p, off_t obj_offset,
> @@ -2909,7 +2909,7 @@ static int sha1_loose_object_info(const unsigned char
> *sha1,
> int flags)
> {
> int status = 0;
> - unsigned long mapsize;
> + size_t mapsize;
> void *map;
> git_zstream stream;
> char hdr[32];
> @@ -3088,7 +3088,7 @@ static void *read_packed_sha1(const unsigned char *sha1,
> return data;
> }
>
> -int pretend_sha1_file(void *buf, unsigned long len, enum object_type type,
> +int pretend_sha1_file(void *buf, size_t len, enum object_type type,
> unsigned char *sha1)
> {
> struct cached_object *co;
> @@ -3209,14 +3209,14 @@ void *read_object_with_reference(const unsigned char
> *sha1,
> }
> }
>
> -static void write_sha1_file_prepare(const void *buf, unsigned long len,
> +static void write_sha1_file_prepare(const void *buf, size_t len,
> const char *type, unsigned char *sha1,
> char *hdr, int *hdrlen)
> {
> git_SHA_CTX c;
>
> /* Generate the header */
> - *hdrlen = xsnprintf(hdr, *hdrlen, "%s %lu", type, len)+1;
> + *hdrlen = xsnprintf(hdr, *hdrlen, "%s %" PRIuMAX, type,
> (uintmax_t)len)+1;
>
> /* Sha1.. */
> git_SHA1_Init(&c);
> @@ -3275,7 +3275,7 @@ static int write_buffer(int fd, const void *buf, size_t
> len)
> return 0;
> }
>
> -int hash_sha1_file(const void *buf, unsigned long len, const char *type,
> +int hash_sha1_file(const void *buf, size_t len, const char *type,
> unsigned char *sha1)
> {
> char hdr[32];
> @@ -3339,7 +3339,7 @@ static int create_tmpfile(struct strbuf *tmp, const
> char *filename)
> }
>
> static int write_loose_object(const unsigned char *sha1, char *hdr, int
> hdrlen,
> - const void *buf, unsigned long len, time_t mtime)
> + const void *buf, size_t len, time_t mtime)
> {
> int fd, ret;
> unsigned char compressed[4096];
> @@ -3423,7 +3423,7 @@ static int freshen_packed_object(const unsigned char
> *sha1)
> return 1;
> }
>
> -int write_sha1_file(const void *buf, unsigned long len, const char *type,
> unsigned char *sha1)
> +int write_sha1_file(const void *buf, size_t len, const char *type, unsigned
> char *sha1)
> {
> char hdr[32];
> int hdrlen = sizeof(hdr);
> @@ -3437,7 +3437,7 @@ int write_sha1_file(const void *buf, unsigned long len,
> const char *type, unsign
> return write_loose_object(sha1, hdr, hdrlen, buf, len, 0);
> }
>
> -int hash_sha1_file_literally(const void *buf, unsigned long len, const char
> *type,
> +int hash_sha1_file_literally(const void *buf, size_t len, const char *type,
> unsigned char *sha1, unsigned flags)
> {
> char *header;
> @@ -3929,14 +3929,14 @@ int for_each_packed_object(each_packed_object_fn cb,
> void *data, unsigned flags)
>
> static int check_stream_sha1(git_zstream *stream,
> const char *hdr,
> - unsigned long size,
> + size_t size,
> const char *path,
> const unsigned char *expected_sha1)
> {
> git_SHA_CTX c;
> unsigned char real_sha1[GIT_MAX_RAWSZ];
> unsigned char buf[4096];
> - unsigned long total_read;
> + size_t total_read;
> int status = Z_OK;
>
> git_SHA1_Init(&c);
> @@ -3992,7 +3992,7 @@ int read_loose_object(const char *path,
> {
> int ret = -1;
> void *map = NULL;
> - unsigned long mapsize;
> + size_t mapsize;
> git_zstream stream;
> char hdr[32];
>
> diff --git a/streaming.c b/streaming.c
> index 04a8b99..448c4aa 100644
> --- a/streaming.c
> +++ b/streaming.c
> @@ -77,7 +77,7 @@ struct git_istream {
>
> struct {
> void *mapped;
> - unsigned long mapsize;
> + size_t mapsize;
> char hdr[32];
> int hdr_avail;
> int hdr_used;