{"thread":{"id":"46563","subject":"[PATCH 9/9] Convert cache functions to size_t","startedAt":"2017-08-10T19:25:23Z","lastAt":"2017-08-11T07:06:13Z","messageCount":6,"participants":["Martin Koegler","Junio C Hamano"],"isPatch":true,"patchVersion":1,"patchTotal":9},"messages":[{"id":"326072","messageId":"1502393110-31996-5-git-send-email-martin@mail.zuhause","threadId":"46563","inReplyTo":"1502393110-31996-1-git-send-email-martin@mail.zuhause","subject":"[PATCH 9/9] Convert cache functions to size_t","fromName":"Martin Koegler","fromEmail":"martin.koegler@chello.at","sentAt":"2017-08-10T19:25:10Z","receivedAt":"2017-08-10T19:25:23Z","isPatch":true,"sender":{"key":"martin.koegler@chello.at","avatar":"https://avatars.githubusercontent.com/u/1859030?v=4"},"body":"From: Martin Koegler <martin.koegler@chello.at>\n\nSigned-off-by: Martin Koegler <martin.koegler@chello.at>\n---\n cache-tree.c  |  6 +++---\n cache-tree.h  |  2 +-\n cache.h       |  6 +++---\n convert.c     | 18 +++++++++---------\n environment.c |  4 ++--\n read-cache.c  | 18 +++++++++---------\n 6 files changed, 27 insertions(+), 27 deletions(-)\n\ndiff --git a/cache-tree.c b/cache-tree.c\nindex 2440d1d..77b3253 100644\n--- a/cache-tree.c\n+++ b/cache-tree.c\n@@ -485,10 +485,10 @@ void cache_tree_write(struct strbuf *sb, struct cache_tree *root)\n \twrite_one(sb, root, \"\", 0);\n }\n \n-static struct cache_tree *read_one(const char **buffer, unsigned long *size_p)\n+static struct cache_tree *read_one(const char **buffer, size_t *size_p)\n {\n \tconst char *buf = *buffer;\n-\tunsigned long size = *size_p;\n+\tsize_t size = *size_p;\n \tconst char *cp;\n \tchar *ep;\n \tstruct cache_tree *it;\n@@ -568,7 +568,7 @@ static struct cache_tree *read_one(const char **buffer, unsigned long *size_p)\n \treturn NULL;\n }\n \n-struct cache_tree *cache_tree_read(const char *buffer, unsigned long size)\n+struct cache_tree *cache_tree_read(const char *buffer, size_t size)\n {\n \tif (buffer[0])\n \t\treturn NULL; /* not the whole tree */\ndiff --git a/cache-tree.h b/cache-tree.h\nindex f7b9cab..df59e6e 100644\n--- a/cache-tree.h\n+++ b/cache-tree.h\n@@ -28,7 +28,7 @@ void cache_tree_invalidate_path(struct index_state *, const char *);\n struct cache_tree_sub *cache_tree_sub(struct cache_tree *, const char *);\n \n void cache_tree_write(struct strbuf *, struct cache_tree *root);\n-struct cache_tree *cache_tree_read(const char *buffer, unsigned long size);\n+struct cache_tree *cache_tree_read(const char *buffer, size_t size);\n \n int cache_tree_fully_valid(struct cache_tree *);\n int cache_tree_update(struct index_state *, int);\ndiff --git a/cache.h b/cache.h\nindex 9322303..f77d9ec 100644\n--- a/cache.h\n+++ b/cache.h\n@@ -667,7 +667,7 @@ extern int chmod_index_entry(struct index_state *, struct cache_entry *ce, char\n extern int ce_same_name(const struct cache_entry *a, const struct cache_entry *b);\n extern void set_object_name_for_intent_to_add_entry(struct cache_entry *ce);\n extern int index_name_is_other(const struct index_state *, const char *, int);\n-extern void *read_blob_data_from_index(const struct index_state *, const char *, unsigned long *);\n+extern void *read_blob_data_from_index(const struct index_state *, const char *, size_t *);\n \n /* do stat comparison even if CE_VALID is true */\n #define CE_MATCH_IGNORE_VALID\t\t01\n@@ -743,8 +743,8 @@ extern int pack_compression_level;\n extern size_t packed_git_window_size;\n extern size_t packed_git_limit;\n extern size_t delta_base_cache_limit;\n-extern unsigned long big_file_threshold;\n-extern unsigned long pack_size_limit_cfg;\n+extern size_t big_file_threshold;\n+extern size_t pack_size_limit_cfg;\n \n /*\n  * Accessors for the core.sharedrepository config which lazy-load the value\ndiff --git a/convert.c b/convert.c\nindex 1012462..445599b 100644\n--- a/convert.c\n+++ b/convert.c\n@@ -41,9 +41,9 @@ struct text_stat {\n \tunsigned printable, nonprintable;\n };\n \n-static void gather_stats(const char *buf, unsigned long size, struct text_stat *stats)\n+static void gather_stats(const char *buf, size_t size, struct text_stat *stats)\n {\n-\tunsigned long i;\n+\tsize_t i;\n \n \tmemset(stats, 0, sizeof(*stats));\n \n@@ -90,7 +90,7 @@ static void gather_stats(const char *buf, unsigned long size, struct text_stat *\n  * The same heuristics as diff.c::mmfile_is_binary()\n  * We treat files with bare CR as binary\n  */\n-static int convert_is_binary(unsigned long size, const struct text_stat *stats)\n+static int convert_is_binary(size_t size, const struct text_stat *stats)\n {\n \tif (stats->lonecr)\n \t\treturn 1;\n@@ -101,7 +101,7 @@ static int convert_is_binary(unsigned long size, const struct text_stat *stats)\n \treturn 0;\n }\n \n-static unsigned int gather_convert_stats(const char *data, unsigned long size)\n+static unsigned int gather_convert_stats(const char *data, size_t size)\n {\n \tstruct text_stat stats;\n \tint ret = 0;\n@@ -118,7 +118,7 @@ static unsigned int gather_convert_stats(const char *data, unsigned long size)\n \treturn ret;\n }\n \n-static const char *gather_convert_stats_ascii(const char *data, unsigned long size)\n+static const char *gather_convert_stats_ascii(const char *data, size_t size)\n {\n \tunsigned int convert_stats = gather_convert_stats(data, size);\n \n@@ -140,7 +140,7 @@ const char *get_cached_convert_stats_ascii(const struct index_state *istate,\n \t\t\t\t\t   const char *path)\n {\n \tconst char *ret;\n-\tunsigned long sz;\n+\tsize_t sz;\n \tvoid *data = read_blob_data_from_index(istate, path, &sz);\n \tret = gather_convert_stats_ascii(data, sz);\n \tfree(data);\n@@ -222,7 +222,7 @@ static void check_safe_crlf(const char *path, enum crlf_action crlf_action,\n \n static int has_cr_in_index(const struct index_state *istate, const char *path)\n {\n-\tunsigned long sz;\n+\tsize_t sz;\n \tvoid *data;\n \tint has_cr;\n \n@@ -384,7 +384,7 @@ static int crlf_to_worktree(const char *path, const char *src, size_t len,\n \n struct filter_params {\n \tconst char *src;\n-\tunsigned long size;\n+\tsize_t size;\n \tint fd;\n \tconst char *cmd;\n \tconst char *path;\n@@ -798,7 +798,7 @@ static int read_convert_config(const char *var, const char *value, void *cb)\n \treturn 0;\n }\n \n-static int count_ident(const char *cp, unsigned long size)\n+static int count_ident(const char *cp, size_t size)\n {\n \t/*\n \t * \"$Id: 0000000000000000000000000000000000000000 $\" <=> \"$Id$\"\ndiff --git a/environment.c b/environment.c\nindex 3fd4b10..7cf201f 100644\n--- a/environment.c\n+++ b/environment.c\n@@ -40,7 +40,7 @@ int fsync_object_files;\n size_t packed_git_window_size = DEFAULT_PACKED_GIT_WINDOW_SIZE;\n size_t packed_git_limit = DEFAULT_PACKED_GIT_LIMIT;\n size_t delta_base_cache_limit = 96 * 1024 * 1024;\n-unsigned long big_file_threshold = 512 * 1024 * 1024;\n+size_t big_file_threshold = 512 * 1024 * 1024;\n int pager_use_color = 1;\n const char *editor_program;\n const char *askpass_program;\n@@ -63,7 +63,7 @@ int grafts_replace_parents = 1;\n int core_apply_sparse_checkout;\n int merge_log_config = -1;\n int precomposed_unicode = -1; /* see probe_utf8_pathname_composition() */\n-unsigned long pack_size_limit_cfg;\n+size_t pack_size_limit_cfg;\n enum hide_dotfiles_type hide_dotfiles = HIDE_DOTFILES_DOTGITONLY;\n enum log_refs_config log_all_ref_updates = LOG_REFS_UNSET;\n \ndiff --git a/read-cache.c b/read-cache.c\nindex 854a5d6..8a32619 100644\n--- a/read-cache.c\n+++ b/read-cache.c\n@@ -1509,7 +1509,7 @@ struct ondisk_cache_entry_extended {\n /* Allow fsck to force verification of the index checksum. */\n int verify_index_checksum;\n \n-static int verify_hdr(struct cache_header *hdr, unsigned long size)\n+static int verify_hdr(struct cache_header *hdr, size_t size)\n {\n \tgit_SHA_CTX c;\n \tunsigned char sha1[20];\n@@ -1533,7 +1533,7 @@ static int verify_hdr(struct cache_header *hdr, unsigned long size)\n }\n \n static int read_index_extension(struct index_state *istate,\n-\t\t\t\tconst char *ext, void *data, unsigned long sz)\n+\t\t\t\tconst char *ext, void *data, size_t sz)\n {\n \tswitch (CACHE_EXT(ext)) {\n \tcase CACHE_EXT_TREE:\n@@ -1602,7 +1602,7 @@ static struct cache_entry *cache_entry_from_ondisk(struct ondisk_cache_entry *on\n  * number of bytes to be stripped from the end of the previous name,\n  * and the bytes to append to the result, to come up with its name.\n  */\n-static unsigned long expand_name_field(struct strbuf *name, const char *cp_)\n+static size_t expand_name_field(struct strbuf *name, const char *cp_)\n {\n \tconst unsigned char *ep, *cp = (const unsigned char *)cp_;\n \tsize_t len = decode_varint(&cp);\n@@ -1617,7 +1617,7 @@ static unsigned long expand_name_field(struct strbuf *name, const char *cp_)\n }\n \n static struct cache_entry *create_from_disk(struct ondisk_cache_entry *ondisk,\n-\t\t\t\t\t    unsigned long *ent_size,\n+\t\t\t\t\t    size_t *ent_size,\n \t\t\t\t\t    struct strbuf *previous_name)\n {\n \tstruct cache_entry *ce;\n@@ -1651,7 +1651,7 @@ static struct cache_entry *create_from_disk(struct ondisk_cache_entry *ondisk,\n \n \t\t*ent_size = ondisk_ce_size(ce);\n \t} else {\n-\t\tunsigned long consumed;\n+\t\tsize_t consumed;\n \t\tconsumed = expand_name_field(previous_name, name);\n \t\tce = cache_entry_from_ondisk(ondisk, flags,\n \t\t\t\t\t     previous_name->buf,\n@@ -1728,7 +1728,7 @@ int do_read_index(struct index_state *istate, const char *path, int must_exist)\n {\n \tint fd, i;\n \tstruct stat st;\n-\tunsigned long src_offset;\n+\tsize_t src_offset;\n \tstruct cache_header *hdr;\n \tvoid *mmap;\n \tsize_t mmap_size;\n@@ -1778,7 +1778,7 @@ int do_read_index(struct index_state *istate, const char *path, int must_exist)\n \tfor (i = 0; i < istate->cache_nr; i++) {\n \t\tstruct ondisk_cache_entry *disk_ce;\n \t\tstruct cache_entry *ce;\n-\t\tunsigned long consumed;\n+\t\tsize_t consumed;\n \n \t\tdisk_ce = (struct ondisk_cache_entry *)((char *)mmap + src_offset);\n \t\tce = create_from_disk(disk_ce, &consumed, previous_name);\n@@ -1914,7 +1914,7 @@ int unmerged_index(const struct index_state *istate)\n \n #define WRITE_BUFFER_SIZE 8192\n static unsigned char write_buffer[WRITE_BUFFER_SIZE];\n-static unsigned long write_buffer_len;\n+static size_t write_buffer_len;\n \n static int ce_write_flush(git_SHA_CTX *context, int fd)\n {\n@@ -2580,7 +2580,7 @@ int index_name_is_other(const struct index_state *istate, const char *name,\n }\n \n void *read_blob_data_from_index(const struct index_state *istate,\n-\t\t\t\tconst char *path, unsigned long *size)\n+\t\t\t\tconst char *path, size_t *size)\n {\n \tint pos, len;\n \tsize_t sz;\n-- \n2.1.4\n\n"},{"id":"326073","messageId":"1502393110-31996-2-git-send-email-martin@mail.zuhause","threadId":"46563","inReplyTo":"1502393110-31996-1-git-send-email-martin@mail.zuhause","subject":"[PATCH 6/9] Use size_t for sha1","fromName":"Martin Koegler","fromEmail":"martin.koegler@chello.at","sentAt":"2017-08-10T19:25:07Z","receivedAt":"2017-08-10T19:25:26Z","isPatch":true,"sender":{"key":"martin.koegler@chello.at","avatar":"https://avatars.githubusercontent.com/u/1859030?v=4"},"body":"From: Martin Koegler <martin.koegler@chello.at>\n\nSigned-off-by: Martin Koegler <martin.koegler@chello.at>\n---\n block-sha1/sha1.c | 2 +-\n block-sha1/sha1.h | 2 +-\n ppc/sha1.c        | 2 +-\n ppc/sha1.h        | 2 +-\n sha1dc_git.c      | 2 +-\n sha1dc_git.h      | 2 +-\n sha1dc_git_ext.h  | 2 +-\n 7 files changed, 7 insertions(+), 7 deletions(-)\n\ndiff --git a/block-sha1/sha1.c b/block-sha1/sha1.c\nindex 22b125c..8681031 100644\n--- a/block-sha1/sha1.c\n+++ b/block-sha1/sha1.c\n@@ -203,7 +203,7 @@ void blk_SHA1_Init(blk_SHA_CTX *ctx)\n \tctx->H[4] = 0xc3d2e1f0;\n }\n \n-void blk_SHA1_Update(blk_SHA_CTX *ctx, const void *data, unsigned long len)\n+void blk_SHA1_Update(blk_SHA_CTX *ctx, const void *data, size_t len)\n {\n \tunsigned int lenW = ctx->size & 63;\n \ndiff --git a/block-sha1/sha1.h b/block-sha1/sha1.h\nindex 4df6747..9fb0441 100644\n--- a/block-sha1/sha1.h\n+++ b/block-sha1/sha1.h\n@@ -13,7 +13,7 @@ typedef struct {\n } blk_SHA_CTX;\n \n void blk_SHA1_Init(blk_SHA_CTX *ctx);\n-void blk_SHA1_Update(blk_SHA_CTX *ctx, const void *dataIn, unsigned long len);\n+void blk_SHA1_Update(blk_SHA_CTX *ctx, const void *dataIn, size_t len);\n void blk_SHA1_Final(unsigned char hashout[20], blk_SHA_CTX *ctx);\n \n #define platform_SHA_CTX\tblk_SHA_CTX\ndiff --git a/ppc/sha1.c b/ppc/sha1.c\nindex ec6a192..f0dfcfb 100644\n--- a/ppc/sha1.c\n+++ b/ppc/sha1.c\n@@ -25,7 +25,7 @@ int ppc_SHA1_Init(ppc_SHA_CTX *c)\n \treturn 0;\n }\n \n-int ppc_SHA1_Update(ppc_SHA_CTX *c, const void *ptr, unsigned long n)\n+int ppc_SHA1_Update(ppc_SHA_CTX *c, const void *ptr, size_t n)\n {\n \tunsigned long nb;\n \tconst unsigned char *p = ptr;\ndiff --git a/ppc/sha1.h b/ppc/sha1.h\nindex 9b24b32..52cac23 100644\n--- a/ppc/sha1.h\n+++ b/ppc/sha1.h\n@@ -16,7 +16,7 @@ typedef struct {\n } ppc_SHA_CTX;\n \n int ppc_SHA1_Init(ppc_SHA_CTX *c);\n-int ppc_SHA1_Update(ppc_SHA_CTX *c, const void *p, unsigned long n);\n+int ppc_SHA1_Update(ppc_SHA_CTX *c, const void *p, size_t n);\n int ppc_SHA1_Final(unsigned char *hash, ppc_SHA_CTX *c);\n \n #define platform_SHA_CTX\tppc_SHA_CTX\ndiff --git a/sha1dc_git.c b/sha1dc_git.c\nindex 4d32b4f..a9076bc 100644\n--- a/sha1dc_git.c\n+++ b/sha1dc_git.c\n@@ -11,7 +11,7 @@ void git_SHA1DCFinal(unsigned char hash[20], SHA1_CTX *ctx)\n \t    sha1_to_hex(hash));\n }\n \n-void git_SHA1DCUpdate(SHA1_CTX *ctx, const void *vdata, unsigned long len)\n+void git_SHA1DCUpdate(SHA1_CTX *ctx, const void *vdata, size_t len)\n {\n \tconst char *data = vdata;\n \t/* We expect an unsigned long, but sha1dc only takes an int */\ndiff --git a/sha1dc_git.h b/sha1dc_git.h\nindex a8a5c1d..f6051aa 100644\n--- a/sha1dc_git.h\n+++ b/sha1dc_git.h\n@@ -11,7 +11,7 @@ void git_SHA1DCFinal(unsigned char [20], SHA1_CTX *);\n /*\n  * Same as SHA1DCUpdate, but adjust types to match git's usual interface.\n  */\n-void git_SHA1DCUpdate(SHA1_CTX *ctx, const void *data, unsigned long len);\n+void git_SHA1DCUpdate(SHA1_CTX *ctx, const void *data, size_t len);\n \n #define platform_SHA_CTX SHA1_CTX\n #define platform_SHA1_Init SHA1DCInit\ndiff --git a/sha1dc_git_ext.h b/sha1dc_git_ext.h\nindex d0ea8ce..aede828 100644\n--- a/sha1dc_git_ext.h\n+++ b/sha1dc_git_ext.h\n@@ -17,7 +17,7 @@ void git_SHA1DCFinal(unsigned char [20], SHA1_CTX *);\n /*\n  * Same as SHA1DCUpdate, but adjust types to match git's usual interface.\n  */\n-void git_SHA1DCUpdate(SHA1_CTX *ctx, const void *data, unsigned long len);\n+void git_SHA1DCUpdate(SHA1_CTX *ctx, const void *data, size_t len);\n \n #define platform_SHA_CTX SHA1_CTX\n #define platform_SHA1_Init git_SHA1DCInit\n-- \n2.1.4\n\n"},{"id":"326074","messageId":"1502393110-31996-4-git-send-email-martin@mail.zuhause","threadId":"46563","inReplyTo":"1502393110-31996-1-git-send-email-martin@mail.zuhause","subject":"[PATCH 8/9] Convert fsck.c & commit.c to size_t","fromName":"Martin Koegler","fromEmail":"martin.koegler@chello.at","sentAt":"2017-08-10T19:25:09Z","receivedAt":"2017-08-10T19:25:29Z","isPatch":true,"sender":{"key":"martin.koegler@chello.at","avatar":"https://avatars.githubusercontent.com/u/1859030?v=4"},"body":"From: Martin Koegler <martin.koegler@chello.at>\n\nSigned-off-by: Martin Koegler <martin.koegler@chello.at>\n---\n builtin/replace.c |  2 +-\n commit.c          | 14 +++++++-------\n commit.h          |  8 ++++----\n fsck.c            | 14 +++++++-------\n fsck.h            |  2 +-\n 5 files changed, 20 insertions(+), 20 deletions(-)\n\ndiff --git a/builtin/replace.c b/builtin/replace.c\nindex f4a85a1..dcd0d1e 100644\n--- a/builtin/replace.c\n+++ b/builtin/replace.c\n@@ -391,7 +391,7 @@ static int create_graft(int argc, const char **argv, int force)\n \tstruct commit *commit;\n \tstruct strbuf buf = STRBUF_INIT;\n \tconst char *buffer;\n-\tunsigned long size;\n+\tsize_t size;\n \n \tif (get_oid(old_ref, &old) < 0)\n \t\tdie(_(\"Not a valid object name: '%s'\"), old_ref);\ndiff --git a/commit.c b/commit.c\nindex 79decc2..5ebac6a 100644\n--- a/commit.c\n+++ b/commit.c\n@@ -231,19 +231,19 @@ int unregister_shallow(const struct object_id *oid)\n \n struct commit_buffer {\n \tvoid *buffer;\n-\tunsigned long size;\n+\tsize_t size;\n };\n define_commit_slab(buffer_slab, struct commit_buffer);\n static struct buffer_slab buffer_slab = COMMIT_SLAB_INIT(1, buffer_slab);\n \n-void set_commit_buffer(struct commit *commit, void *buffer, unsigned long size)\n+void set_commit_buffer(struct commit *commit, void *buffer, size_t size)\n {\n \tstruct commit_buffer *v = buffer_slab_at(&buffer_slab, commit);\n \tv->buffer = buffer;\n \tv->size = size;\n }\n \n-const void *get_cached_commit_buffer(const struct commit *commit, unsigned long *sizep)\n+const void *get_cached_commit_buffer(const struct commit *commit, size_t *sizep)\n {\n \tstruct commit_buffer *v = buffer_slab_peek(&buffer_slab, commit);\n \tif (!v) {\n@@ -256,7 +256,7 @@ const void *get_cached_commit_buffer(const struct commit *commit, unsigned long\n \treturn v->buffer;\n }\n \n-const void *get_commit_buffer(const struct commit *commit, unsigned long *sizep)\n+const void *get_commit_buffer(const struct commit *commit, size_t *sizep)\n {\n \tconst void *ret = get_cached_commit_buffer(commit, sizep);\n \tif (!ret) {\n@@ -291,7 +291,7 @@ void free_commit_buffer(struct commit *commit)\n \t}\n }\n \n-const void *detach_commit_buffer(struct commit *commit, unsigned long *sizep)\n+const void *detach_commit_buffer(struct commit *commit, size_t *sizep)\n {\n \tstruct commit_buffer *v = buffer_slab_peek(&buffer_slab, commit);\n \tvoid *ret;\n@@ -1128,7 +1128,7 @@ int parse_signed_commit(const struct commit *commit,\n \t\t\tstruct strbuf *payload, struct strbuf *signature)\n {\n \n-\tunsigned long size;\n+\tsize_t size;\n \tconst char *buffer = get_commit_buffer(commit, &size);\n \tint in_signature, saw_signature = -1;\n \tconst char *line, *tail;\n@@ -1284,7 +1284,7 @@ struct commit_extra_header *read_commit_extra_headers(struct commit *commit,\n \t\t\t\t\t\t      const char **exclude)\n {\n \tstruct commit_extra_header *extra = NULL;\n-\tunsigned long size;\n+\tsize_t size;\n \tconst char *buffer = get_commit_buffer(commit, &size);\n \textra = read_commit_extra_header_lines(buffer, size, exclude);\n \tunuse_commit_buffer(commit, buffer);\ndiff --git a/commit.h b/commit.h\nindex 82e966e..fd44de3 100644\n--- a/commit.h\n+++ b/commit.h\n@@ -70,20 +70,20 @@ void parse_commit_or_die(struct commit *item);\n  * Associate an object buffer with the commit. The ownership of the\n  * memory is handed over to the commit, and must be free()-able.\n  */\n-void set_commit_buffer(struct commit *, void *buffer, unsigned long size);\n+void set_commit_buffer(struct commit *, void *buffer, size_t size);\n \n /*\n  * Get any cached object buffer associated with the commit. Returns NULL\n  * if none. The resulting memory should not be freed.\n  */\n-const void *get_cached_commit_buffer(const struct commit *, unsigned long *size);\n+const void *get_cached_commit_buffer(const struct commit *, size_t *size);\n \n /*\n  * Get the commit's object contents, either from cache or by reading the object\n  * from disk. The resulting memory should not be modified, and must be given\n  * to unuse_commit_buffer when the caller is done.\n  */\n-const void *get_commit_buffer(const struct commit *, unsigned long *size);\n+const void *get_commit_buffer(const struct commit *, size_t *size);\n \n /*\n  * Tell the commit subsytem that we are done with a particular commit buffer.\n@@ -102,7 +102,7 @@ void free_commit_buffer(struct commit *);\n  * Disassociate any cached object buffer from the commit, but do not free it.\n  * The buffer (or NULL, if none) is returned.\n  */\n-const void *detach_commit_buffer(struct commit *, unsigned long *sizep);\n+const void *detach_commit_buffer(struct commit *, size_t *sizep);\n \n /* Find beginning and length of commit subject. */\n int find_commit_subject(const char *commit_buffer, const char **subject);\ndiff --git a/fsck.c b/fsck.c\nindex feca3a8..9039373 100644\n--- a/fsck.c\n+++ b/fsck.c\n@@ -632,18 +632,18 @@ static int fsck_tree(struct tree *item, struct fsck_options *options)\n \treturn retval;\n }\n \n-static int verify_headers(const void *data, unsigned long size,\n+static int verify_headers(const void *data, size_t size,\n \t\t\t  struct object *obj, struct fsck_options *options)\n {\n \tconst char *buffer = (const char *)data;\n-\tunsigned long i;\n+\tsize_t i;\n \n \tfor (i = 0; i < size; i++) {\n \t\tswitch (buffer[i]) {\n \t\tcase '\\0':\n \t\t\treturn report(options, obj,\n \t\t\t\tFSCK_MSG_NUL_IN_HEADER,\n-\t\t\t\t\"unterminated header: NUL at offset %ld\", i);\n+\t\t\t\t\"unterminated header: NUL at offset %\" PRIuMAX, (uintmax_t)i);\n \t\tcase '\\n':\n \t\t\tif (i + 1 < size && buffer[i + 1] == '\\n')\n \t\t\t\treturn 0;\n@@ -708,7 +708,7 @@ static int fsck_ident(const char **ident, struct object *obj, struct fsck_option\n }\n \n static int fsck_commit_buffer(struct commit *commit, const char *buffer,\n-\tunsigned long size, struct fsck_options *options)\n+\tsize_t size, struct fsck_options *options)\n {\n \tunsigned char tree_sha1[20], sha1[20];\n \tstruct commit_graft *graft;\n@@ -786,7 +786,7 @@ static int fsck_commit_buffer(struct commit *commit, const char *buffer,\n }\n \n static int fsck_commit(struct commit *commit, const char *data,\n-\tunsigned long size, struct fsck_options *options)\n+\tsize_t size, struct fsck_options *options)\n {\n \tconst char *buffer = data ?  data : get_commit_buffer(commit, &size);\n \tint ret = fsck_commit_buffer(commit, buffer, size, options);\n@@ -890,7 +890,7 @@ static int fsck_tag_buffer(struct tag *tag, const char *data,\n }\n \n static int fsck_tag(struct tag *tag, const char *data,\n-\tunsigned long size, struct fsck_options *options)\n+\tsize_t size, struct fsck_options *options)\n {\n \tstruct object *tagged = tag->tagged;\n \n@@ -900,7 +900,7 @@ static int fsck_tag(struct tag *tag, const char *data,\n \treturn fsck_tag_buffer(tag, data, size, options);\n }\n \n-int fsck_object(struct object *obj, void *data, unsigned long size,\n+int fsck_object(struct object *obj, void *data, size_t size,\n \tstruct fsck_options *options)\n {\n \tif (!obj)\ndiff --git a/fsck.h b/fsck.h\nindex 4525510..3de5807 100644\n--- a/fsck.h\n+++ b/fsck.h\n@@ -50,7 +50,7 @@ struct fsck_options {\n  */\n int fsck_walk(struct object *obj, void *data, struct fsck_options *options);\n /* If NULL is passed for data, we assume the object is local and read it. */\n-int fsck_object(struct object *obj, void *data, unsigned long size,\n+int fsck_object(struct object *obj, void *data, size_t size,\n \tstruct fsck_options *options);\n \n #endif\n-- \n2.1.4\n\n"},{"id":"326075","messageId":"1502393110-31996-1-git-send-email-martin@mail.zuhause","threadId":"46563","inReplyTo":null,"subject":"[PATCH 5/9] Convert sha1_file.c to size_t","fromName":"Martin Koegler","fromEmail":"martin.koegler@chello.at","sentAt":"2017-08-10T19:25:06Z","receivedAt":"2017-08-10T19:25:38Z","isPatch":true,"sender":{"key":"martin.koegler@chello.at","avatar":"https://avatars.githubusercontent.com/u/1859030?v=4"},"body":"From: Martin Koegler <martin.koegler@chello.at>\n\nSigned-off-by: Martin Koegler <martin.koegler@chello.at>\n---\n cache.h     | 16 +++++++--------\n sha1_file.c | 68 ++++++++++++++++++++++++++++++-------------------------------\n streaming.c |  2 +-\n 3 files changed, 43 insertions(+), 43 deletions(-)\n\ndiff --git a/cache.h b/cache.h\nindex 9185763..9322303 100644\n--- a/cache.h\n+++ b/cache.h\n@@ -1189,15 +1189,15 @@ static inline const unsigned char *lookup_replace_object(const unsigned char *sh\n \n /* Read and unpack a sha1 file into memory, write memory to a sha1 file */\n extern int sha1_object_info(const unsigned char *, size_t *);\n-extern int hash_sha1_file(const void *buf, unsigned long len, const char *type, unsigned char *sha1);\n-extern int write_sha1_file(const void *buf, unsigned long len, const char *type, unsigned char *return_sha1);\n-extern int hash_sha1_file_literally(const void *buf, unsigned long len, const char *type, unsigned char *sha1, unsigned flags);\n-extern int pretend_sha1_file(void *, unsigned long, enum object_type, unsigned char *);\n+extern int hash_sha1_file(const void *buf, size_t len, const char *type, unsigned char *sha1);\n+extern int write_sha1_file(const void *buf, size_t len, const char *type, unsigned char *return_sha1);\n+extern int hash_sha1_file_literally(const void *buf, size_t len, const char *type, unsigned char *sha1, unsigned flags);\n+extern int pretend_sha1_file(void *, size_t, enum object_type, unsigned char *);\n extern int force_object_loose(const unsigned char *sha1, time_t mtime);\n extern int git_open_cloexec(const char *name, int flags);\n #define git_open(name) git_open_cloexec(name, O_RDONLY)\n-extern void *map_sha1_file(const unsigned char *sha1, unsigned long *size);\n-extern int unpack_sha1_header(git_zstream *stream, unsigned char *map, unsigned long mapsize, void *buffer, unsigned long bufsiz);\n+extern void *map_sha1_file(const unsigned char *sha1, size_t *size);\n+extern int unpack_sha1_header(git_zstream *stream, unsigned char *map, size_t mapsize, void *buffer, size_t bufsiz);\n extern int parse_sha1_header(const char *hdr, size_t *sizep);\n \n /* global flag to enable extra checks when accessing packed objects */\n@@ -1723,8 +1723,8 @@ extern off_t find_pack_entry_one(const unsigned char *sha1, struct packed_git *)\n \n extern int is_pack_valid(struct packed_git *);\n extern void *unpack_entry(struct packed_git *, off_t, enum object_type *, size_t *);\n-extern unsigned long unpack_object_header_buffer(const unsigned char *buf, unsigned long len, enum object_type *type, size_t *sizep);\n-extern unsigned long get_size_from_delta(struct packed_git *, struct pack_window **, off_t);\n+extern size_t unpack_object_header_buffer(const unsigned char *buf, size_t len, enum object_type *type, size_t *sizep);\n+extern size_t get_size_from_delta(struct packed_git *, struct pack_window **, off_t);\n extern int unpack_object_header(struct packed_git *, struct pack_window **, off_t *, size_t *);\n \n /*\ndiff --git a/sha1_file.c b/sha1_file.c\nindex 3428172..1b3efea 100644\n--- a/sha1_file.c\n+++ b/sha1_file.c\n@@ -51,7 +51,7 @@ static struct cached_object {\n \tunsigned char sha1[20];\n \tenum object_type type;\n \tvoid *buf;\n-\tunsigned long size;\n+\tsize_t size;\n } *cached_objects;\n static int cached_object_nr, cached_object_alloc;\n \n@@ -818,8 +818,8 @@ static int check_packed_git_idx(const char *path, struct packed_git *p)\n \t\t * variable sized table containing 8-byte entries\n \t\t * for offsets larger than 2^31.\n \t\t */\n-\t\tunsigned long min_size = 8 + 4*256 + nr*(20 + 4 + 4) + 20 + 20;\n-\t\tunsigned long max_size = min_size;\n+\t\tsize_t min_size = 8 + 4*256 + nr*(20 + 4 + 4) + 20 + 20;\n+\t\tsize_t max_size = min_size;\n \t\tif (nr)\n \t\t\tmax_size += (nr - 1)*8;\n \t\tif (idx_size < min_size || idx_size > max_size) {\n@@ -1763,7 +1763,7 @@ static int open_sha1_file(const unsigned char *sha1, const char **path)\n  */\n static void *map_sha1_file_1(const char *path,\n \t\t\t     const unsigned char *sha1,\n-\t\t\t     unsigned long *size)\n+\t\t\t     size_t *size)\n {\n \tvoid *map;\n \tint fd;\n@@ -1790,13 +1790,13 @@ static void *map_sha1_file_1(const char *path,\n \treturn map;\n }\n \n-void *map_sha1_file(const unsigned char *sha1, unsigned long *size)\n+void *map_sha1_file(const unsigned char *sha1, size_t *size)\n {\n \treturn map_sha1_file_1(NULL, sha1, size);\n }\n \n-unsigned long unpack_object_header_buffer(const unsigned char *buf,\n-\t\tunsigned long len, enum object_type *type, size_t *sizep)\n+size_t unpack_object_header_buffer(const unsigned char *buf,\n+\t\t\t\t   size_t len, enum object_type *type, size_t *sizep)\n {\n \tunsigned shift;\n \tsize_t size, c;\n@@ -1821,8 +1821,8 @@ unsigned long unpack_object_header_buffer(const unsigned char *buf,\n }\n \n static int unpack_sha1_short_header(git_zstream *stream,\n-\t\t\t\t    unsigned char *map, unsigned long mapsize,\n-\t\t\t\t    void *buffer, unsigned long bufsiz)\n+\t\t\t\t    unsigned char *map, size_t mapsize,\n+\t\t\t\t    void *buffer, size_t bufsiz)\n {\n \t/* Get the data stream */\n \tmemset(stream, 0, sizeof(*stream));\n@@ -1836,8 +1836,8 @@ static int unpack_sha1_short_header(git_zstream *stream,\n }\n \n int unpack_sha1_header(git_zstream *stream,\n-\t\t       unsigned char *map, unsigned long mapsize,\n-\t\t       void *buffer, unsigned long bufsiz)\n+\t\t       unsigned char *map, size_t mapsize,\n+\t\t       void *buffer, size_t bufsiz)\n {\n \tint status = unpack_sha1_short_header(stream, map, mapsize,\n \t\t\t\t\t      buffer, bufsiz);\n@@ -1852,8 +1852,8 @@ int unpack_sha1_header(git_zstream *stream,\n }\n \n static int unpack_sha1_header_to_strbuf(git_zstream *stream, unsigned char *map,\n-\t\t\t\t\tunsigned long mapsize, void *buffer,\n-\t\t\t\t\tunsigned long bufsiz, struct strbuf *header)\n+\t\t\t\t\tsize_t mapsize, void *buffer,\n+\t\t\t\t\tsize_t bufsiz, struct strbuf *header)\n {\n \tint status;\n \n@@ -1887,11 +1887,11 @@ static int unpack_sha1_header_to_strbuf(git_zstream *stream, unsigned char *map,\n \treturn -1;\n }\n \n-static void *unpack_sha1_rest(git_zstream *stream, void *buffer, unsigned long size, const unsigned char *sha1)\n+static void *unpack_sha1_rest(git_zstream *stream, void *buffer, size_t size, const unsigned char *sha1)\n {\n \tint bytes = strlen(buffer) + 1;\n \tunsigned char *buf = xmallocz(size);\n-\tunsigned long n;\n+\tsize_t n;\n \tint status = Z_OK;\n \n \tn = stream->total_out - bytes;\n@@ -1941,7 +1941,7 @@ static int parse_sha1_header_extended(const char *hdr, struct object_info *oi,\n \t\t\t       unsigned int flags)\n {\n \tconst char *type_buf = hdr;\n-\tunsigned long size;\n+\tsize_t size;\n \tint type, type_len = 0;\n \n \t/*\n@@ -2006,9 +2006,9 @@ int parse_sha1_header(const char *hdr, size_t *sizep)\n \treturn parse_sha1_header_extended(hdr, &oi, 0);\n }\n \n-unsigned long get_size_from_delta(struct packed_git *p,\n-\t\t\t\t  struct pack_window **w_curs,\n-\t\t\t          off_t curpos)\n+size_t get_size_from_delta(struct packed_git *p,\n+\t\t\t   struct pack_window **w_curs,\n+\t\t\t   off_t curpos)\n {\n \tconst unsigned char *data;\n \tunsigned char delta_head[20], *in;\n@@ -2242,7 +2242,7 @@ struct delta_base_cache_entry {\n \tstruct delta_base_cache_key key;\n \tstruct list_head lru;\n \tvoid *data;\n-\tunsigned long size;\n+\tsize_t size;\n \tenum object_type type;\n };\n \n@@ -2339,7 +2339,7 @@ void clear_delta_base_cache(void)\n }\n \n static void add_delta_base_cache(struct packed_git *p, off_t base_offset,\n-\tvoid *base, unsigned long base_size, enum object_type type)\n+\tvoid *base, size_t base_size, enum object_type type)\n {\n \tstruct delta_base_cache_entry *ent = xmalloc(sizeof(*ent));\n \tstruct list_head *lru, *tmp;\n@@ -2453,7 +2453,7 @@ int packed_object_info(struct packed_git *p, off_t obj_offset,\n static void *unpack_compressed_entry(struct packed_git *p,\n \t\t\t\t    struct pack_window **w_curs,\n \t\t\t\t    off_t curpos,\n-\t\t\t\t    unsigned long size)\n+\t\t\t\t    size_t size)\n {\n \tint st;\n \tgit_zstream stream;\n@@ -2500,7 +2500,7 @@ int do_check_packed_object_crc;\n struct unpack_entry_stack_ent {\n \toff_t obj_offset;\n \toff_t curpos;\n-\tunsigned long size;\n+\tsize_t size;\n };\n \n void *unpack_entry(struct packed_git *p, off_t obj_offset,\n@@ -2909,7 +2909,7 @@ static int sha1_loose_object_info(const unsigned char *sha1,\n \t\t\t\t  int flags)\n {\n \tint status = 0;\n-\tunsigned long mapsize;\n+\tsize_t mapsize;\n \tvoid *map;\n \tgit_zstream stream;\n \tchar hdr[32];\n@@ -3088,7 +3088,7 @@ static void *read_packed_sha1(const unsigned char *sha1,\n \treturn data;\n }\n \n-int pretend_sha1_file(void *buf, unsigned long len, enum object_type type,\n+int pretend_sha1_file(void *buf, size_t len, enum object_type type,\n \t\t      unsigned char *sha1)\n {\n \tstruct cached_object *co;\n@@ -3209,14 +3209,14 @@ void *read_object_with_reference(const unsigned char *sha1,\n \t}\n }\n \n-static void write_sha1_file_prepare(const void *buf, unsigned long len,\n+static void write_sha1_file_prepare(const void *buf, size_t len,\n                                     const char *type, unsigned char *sha1,\n                                     char *hdr, int *hdrlen)\n {\n \tgit_SHA_CTX c;\n \n \t/* Generate the header */\n-\t*hdrlen = xsnprintf(hdr, *hdrlen, \"%s %lu\", type, len)+1;\n+\t*hdrlen = xsnprintf(hdr, *hdrlen, \"%s %\" PRIuMAX, type, (uintmax_t)len)+1;\n \n \t/* Sha1.. */\n \tgit_SHA1_Init(&c);\n@@ -3275,7 +3275,7 @@ static int write_buffer(int fd, const void *buf, size_t len)\n \treturn 0;\n }\n \n-int hash_sha1_file(const void *buf, unsigned long len, const char *type,\n+int hash_sha1_file(const void *buf, size_t len, const char *type,\n                    unsigned char *sha1)\n {\n \tchar hdr[32];\n@@ -3339,7 +3339,7 @@ static int create_tmpfile(struct strbuf *tmp, const char *filename)\n }\n \n static int write_loose_object(const unsigned char *sha1, char *hdr, int hdrlen,\n-\t\t\t      const void *buf, unsigned long len, time_t mtime)\n+\t\t\t      const void *buf, size_t len, time_t mtime)\n {\n \tint fd, ret;\n \tunsigned char compressed[4096];\n@@ -3423,7 +3423,7 @@ static int freshen_packed_object(const unsigned char *sha1)\n \treturn 1;\n }\n \n-int write_sha1_file(const void *buf, unsigned long len, const char *type, unsigned char *sha1)\n+int write_sha1_file(const void *buf, size_t len, const char *type, unsigned char *sha1)\n {\n \tchar hdr[32];\n \tint hdrlen = sizeof(hdr);\n@@ -3437,7 +3437,7 @@ int write_sha1_file(const void *buf, unsigned long len, const char *type, unsign\n \treturn write_loose_object(sha1, hdr, hdrlen, buf, len, 0);\n }\n \n-int hash_sha1_file_literally(const void *buf, unsigned long len, const char *type,\n+int hash_sha1_file_literally(const void *buf, size_t len, const char *type,\n \t\t\t     unsigned char *sha1, unsigned flags)\n {\n \tchar *header;\n@@ -3929,14 +3929,14 @@ int for_each_packed_object(each_packed_object_fn cb, void *data, unsigned flags)\n \n static int check_stream_sha1(git_zstream *stream,\n \t\t\t     const char *hdr,\n-\t\t\t     unsigned long size,\n+\t\t\t     size_t size,\n \t\t\t     const char *path,\n \t\t\t     const unsigned char *expected_sha1)\n {\n \tgit_SHA_CTX c;\n \tunsigned char real_sha1[GIT_MAX_RAWSZ];\n \tunsigned char buf[4096];\n-\tunsigned long total_read;\n+\tsize_t total_read;\n \tint status = Z_OK;\n \n \tgit_SHA1_Init(&c);\n@@ -3992,7 +3992,7 @@ int read_loose_object(const char *path,\n {\n \tint ret = -1;\n \tvoid *map = NULL;\n-\tunsigned long mapsize;\n+\tsize_t mapsize;\n \tgit_zstream stream;\n \tchar hdr[32];\n \ndiff --git a/streaming.c b/streaming.c\nindex 04a8b99..448c4aa 100644\n--- a/streaming.c\n+++ b/streaming.c\n@@ -77,7 +77,7 @@ struct git_istream {\n \n \t\tstruct {\n \t\t\tvoid *mapped;\n-\t\t\tunsigned long mapsize;\n+\t\t\tsize_t mapsize;\n \t\t\tchar hdr[32];\n \t\t\tint hdr_avail;\n \t\t\tint hdr_used;\n-- \n2.1.4\n\n"},{"id":"326112","messageId":"xmqqk22b12jz.fsf@gitster.mtv.corp.google.com","threadId":"46563","inReplyTo":"1502393110-31996-1-git-send-email-martin@mail.zuhause","subject":"Re: [PATCH 5/9] Convert sha1_file.c to size_t","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2017-08-10T22:27:28Z","receivedAt":"2017-08-10T22:27:36Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Martin Koegler <martin.koegler@chello.at> writes:\n\n> From: Martin Koegler <martin.koegler@chello.at>\n>\n> Signed-off-by: Martin Koegler <martin.koegler@chello.at>\n> ---\n\nPlease do not start your patch series from 5/9 when there is no 1/9,\n2/9, 3/9, and 4/9.  It is seriously confusing.\n\nI am guessing that you are trying to split the series into\nmanageable pieces by going per call graph and codeflow.  I think it\nis a more sensible approach than a single huge ball of wax we saw\nearlier.\n\nIt may take me a while to get back to this topic before I finish\nreviewing other new topics in flight and also merging down existing\ntopics so that the codebase will become reasonably stable for a\ntopic that is invasive like this one can safely land.  Please be\npatient.\n\nThanks.\n\n>  cache.h     | 16 +++++++--------\n>  sha1_file.c | 68 ++++++++++++++++++++++++++++++-------------------------------\n>  streaming.c |  2 +-\n>  3 files changed, 43 insertions(+), 43 deletions(-)\n>\n> diff --git a/cache.h b/cache.h\n> index 9185763..9322303 100644\n> --- a/cache.h\n> +++ b/cache.h\n> @@ -1189,15 +1189,15 @@ static inline const unsigned char *lookup_replace_object(const unsigned char *sh\n>  \n>  /* Read and unpack a sha1 file into memory, write memory to a sha1 file */\n>  extern int sha1_object_info(const unsigned char *, size_t *);\n> -extern int hash_sha1_file(const void *buf, unsigned long len, const char *type, unsigned char *sha1);\n> -extern int write_sha1_file(const void *buf, unsigned long len, const char *type, unsigned char *return_sha1);\n> -extern int hash_sha1_file_literally(const void *buf, unsigned long len, const char *type, unsigned char *sha1, unsigned flags);\n> -extern int pretend_sha1_file(void *, unsigned long, enum object_type, unsigned char *);\n> +extern int hash_sha1_file(const void *buf, size_t len, const char *type, unsigned char *sha1);\n> +extern int write_sha1_file(const void *buf, size_t len, const char *type, unsigned char *return_sha1);\n> +extern int hash_sha1_file_literally(const void *buf, size_t len, const char *type, unsigned char *sha1, unsigned flags);\n> +extern int pretend_sha1_file(void *, size_t, enum object_type, unsigned char *);\n>  extern int force_object_loose(const unsigned char *sha1, time_t mtime);\n>  extern int git_open_cloexec(const char *name, int flags);\n>  #define git_open(name) git_open_cloexec(name, O_RDONLY)\n> -extern void *map_sha1_file(const unsigned char *sha1, unsigned long *size);\n> -extern int unpack_sha1_header(git_zstream *stream, unsigned char *map, unsigned long mapsize, void *buffer, unsigned long bufsiz);\n> +extern void *map_sha1_file(const unsigned char *sha1, size_t *size);\n> +extern int unpack_sha1_header(git_zstream *stream, unsigned char *map, size_t mapsize, void *buffer, size_t bufsiz);\n>  extern int parse_sha1_header(const char *hdr, size_t *sizep);\n>  \n>  /* global flag to enable extra checks when accessing packed objects */\n> @@ -1723,8 +1723,8 @@ extern off_t find_pack_entry_one(const unsigned char *sha1, struct packed_git *)\n>  \n>  extern int is_pack_valid(struct packed_git *);\n>  extern void *unpack_entry(struct packed_git *, off_t, enum object_type *, size_t *);\n> -extern unsigned long unpack_object_header_buffer(const unsigned char *buf, unsigned long len, enum object_type *type, size_t *sizep);\n> -extern unsigned long get_size_from_delta(struct packed_git *, struct pack_window **, off_t);\n> +extern size_t unpack_object_header_buffer(const unsigned char *buf, size_t len, enum object_type *type, size_t *sizep);\n> +extern size_t get_size_from_delta(struct packed_git *, struct pack_window **, off_t);\n>  extern int unpack_object_header(struct packed_git *, struct pack_window **, off_t *, size_t *);\n>  \n>  /*\n> diff --git a/sha1_file.c b/sha1_file.c\n> index 3428172..1b3efea 100644\n> --- a/sha1_file.c\n> +++ b/sha1_file.c\n> @@ -51,7 +51,7 @@ static struct cached_object {\n>  \tunsigned char sha1[20];\n>  \tenum object_type type;\n>  \tvoid *buf;\n> -\tunsigned long size;\n> +\tsize_t size;\n>  } *cached_objects;\n>  static int cached_object_nr, cached_object_alloc;\n>  \n> @@ -818,8 +818,8 @@ static int check_packed_git_idx(const char *path, struct packed_git *p)\n>  \t\t * variable sized table containing 8-byte entries\n>  \t\t * for offsets larger than 2^31.\n>  \t\t */\n> -\t\tunsigned long min_size = 8 + 4*256 + nr*(20 + 4 + 4) + 20 + 20;\n> -\t\tunsigned long max_size = min_size;\n> +\t\tsize_t min_size = 8 + 4*256 + nr*(20 + 4 + 4) + 20 + 20;\n> +\t\tsize_t max_size = min_size;\n>  \t\tif (nr)\n>  \t\t\tmax_size += (nr - 1)*8;\n>  \t\tif (idx_size < min_size || idx_size > max_size) {\n> @@ -1763,7 +1763,7 @@ static int open_sha1_file(const unsigned char *sha1, const char **path)\n>   */\n>  static void *map_sha1_file_1(const char *path,\n>  \t\t\t     const unsigned char *sha1,\n> -\t\t\t     unsigned long *size)\n> +\t\t\t     size_t *size)\n>  {\n>  \tvoid *map;\n>  \tint fd;\n> @@ -1790,13 +1790,13 @@ static void *map_sha1_file_1(const char *path,\n>  \treturn map;\n>  }\n>  \n> -void *map_sha1_file(const unsigned char *sha1, unsigned long *size)\n> +void *map_sha1_file(const unsigned char *sha1, size_t *size)\n>  {\n>  \treturn map_sha1_file_1(NULL, sha1, size);\n>  }\n>  \n> -unsigned long unpack_object_header_buffer(const unsigned char *buf,\n> -\t\tunsigned long len, enum object_type *type, size_t *sizep)\n> +size_t unpack_object_header_buffer(const unsigned char *buf,\n> +\t\t\t\t   size_t len, enum object_type *type, size_t *sizep)\n>  {\n>  \tunsigned shift;\n>  \tsize_t size, c;\n> @@ -1821,8 +1821,8 @@ unsigned long unpack_object_header_buffer(const unsigned char *buf,\n>  }\n>  \n>  static int unpack_sha1_short_header(git_zstream *stream,\n> -\t\t\t\t    unsigned char *map, unsigned long mapsize,\n> -\t\t\t\t    void *buffer, unsigned long bufsiz)\n> +\t\t\t\t    unsigned char *map, size_t mapsize,\n> +\t\t\t\t    void *buffer, size_t bufsiz)\n>  {\n>  \t/* Get the data stream */\n>  \tmemset(stream, 0, sizeof(*stream));\n> @@ -1836,8 +1836,8 @@ static int unpack_sha1_short_header(git_zstream *stream,\n>  }\n>  \n>  int unpack_sha1_header(git_zstream *stream,\n> -\t\t       unsigned char *map, unsigned long mapsize,\n> -\t\t       void *buffer, unsigned long bufsiz)\n> +\t\t       unsigned char *map, size_t mapsize,\n> +\t\t       void *buffer, size_t bufsiz)\n>  {\n>  \tint status = unpack_sha1_short_header(stream, map, mapsize,\n>  \t\t\t\t\t      buffer, bufsiz);\n> @@ -1852,8 +1852,8 @@ int unpack_sha1_header(git_zstream *stream,\n>  }\n>  \n>  static int unpack_sha1_header_to_strbuf(git_zstream *stream, unsigned char *map,\n> -\t\t\t\t\tunsigned long mapsize, void *buffer,\n> -\t\t\t\t\tunsigned long bufsiz, struct strbuf *header)\n> +\t\t\t\t\tsize_t mapsize, void *buffer,\n> +\t\t\t\t\tsize_t bufsiz, struct strbuf *header)\n>  {\n>  \tint status;\n>  \n> @@ -1887,11 +1887,11 @@ static int unpack_sha1_header_to_strbuf(git_zstream *stream, unsigned char *map,\n>  \treturn -1;\n>  }\n>  \n> -static void *unpack_sha1_rest(git_zstream *stream, void *buffer, unsigned long size, const unsigned char *sha1)\n> +static void *unpack_sha1_rest(git_zstream *stream, void *buffer, size_t size, const unsigned char *sha1)\n>  {\n>  \tint bytes = strlen(buffer) + 1;\n>  \tunsigned char *buf = xmallocz(size);\n> -\tunsigned long n;\n> +\tsize_t n;\n>  \tint status = Z_OK;\n>  \n>  \tn = stream->total_out - bytes;\n> @@ -1941,7 +1941,7 @@ static int parse_sha1_header_extended(const char *hdr, struct object_info *oi,\n>  \t\t\t       unsigned int flags)\n>  {\n>  \tconst char *type_buf = hdr;\n> -\tunsigned long size;\n> +\tsize_t size;\n>  \tint type, type_len = 0;\n>  \n>  \t/*\n> @@ -2006,9 +2006,9 @@ int parse_sha1_header(const char *hdr, size_t *sizep)\n>  \treturn parse_sha1_header_extended(hdr, &oi, 0);\n>  }\n>  \n> -unsigned long get_size_from_delta(struct packed_git *p,\n> -\t\t\t\t  struct pack_window **w_curs,\n> -\t\t\t          off_t curpos)\n> +size_t get_size_from_delta(struct packed_git *p,\n> +\t\t\t   struct pack_window **w_curs,\n> +\t\t\t   off_t curpos)\n>  {\n>  \tconst unsigned char *data;\n>  \tunsigned char delta_head[20], *in;\n> @@ -2242,7 +2242,7 @@ struct delta_base_cache_entry {\n>  \tstruct delta_base_cache_key key;\n>  \tstruct list_head lru;\n>  \tvoid *data;\n> -\tunsigned long size;\n> +\tsize_t size;\n>  \tenum object_type type;\n>  };\n>  \n> @@ -2339,7 +2339,7 @@ void clear_delta_base_cache(void)\n>  }\n>  \n>  static void add_delta_base_cache(struct packed_git *p, off_t base_offset,\n> -\tvoid *base, unsigned long base_size, enum object_type type)\n> +\tvoid *base, size_t base_size, enum object_type type)\n>  {\n>  \tstruct delta_base_cache_entry *ent = xmalloc(sizeof(*ent));\n>  \tstruct list_head *lru, *tmp;\n> @@ -2453,7 +2453,7 @@ int packed_object_info(struct packed_git *p, off_t obj_offset,\n>  static void *unpack_compressed_entry(struct packed_git *p,\n>  \t\t\t\t    struct pack_window **w_curs,\n>  \t\t\t\t    off_t curpos,\n> -\t\t\t\t    unsigned long size)\n> +\t\t\t\t    size_t size)\n>  {\n>  \tint st;\n>  \tgit_zstream stream;\n> @@ -2500,7 +2500,7 @@ int do_check_packed_object_crc;\n>  struct unpack_entry_stack_ent {\n>  \toff_t obj_offset;\n>  \toff_t curpos;\n> -\tunsigned long size;\n> +\tsize_t size;\n>  };\n>  \n>  void *unpack_entry(struct packed_git *p, off_t obj_offset,\n> @@ -2909,7 +2909,7 @@ static int sha1_loose_object_info(const unsigned char *sha1,\n>  \t\t\t\t  int flags)\n>  {\n>  \tint status = 0;\n> -\tunsigned long mapsize;\n> +\tsize_t mapsize;\n>  \tvoid *map;\n>  \tgit_zstream stream;\n>  \tchar hdr[32];\n> @@ -3088,7 +3088,7 @@ static void *read_packed_sha1(const unsigned char *sha1,\n>  \treturn data;\n>  }\n>  \n> -int pretend_sha1_file(void *buf, unsigned long len, enum object_type type,\n> +int pretend_sha1_file(void *buf, size_t len, enum object_type type,\n>  \t\t      unsigned char *sha1)\n>  {\n>  \tstruct cached_object *co;\n> @@ -3209,14 +3209,14 @@ void *read_object_with_reference(const unsigned char *sha1,\n>  \t}\n>  }\n>  \n> -static void write_sha1_file_prepare(const void *buf, unsigned long len,\n> +static void write_sha1_file_prepare(const void *buf, size_t len,\n>                                      const char *type, unsigned char *sha1,\n>                                      char *hdr, int *hdrlen)\n>  {\n>  \tgit_SHA_CTX c;\n>  \n>  \t/* Generate the header */\n> -\t*hdrlen = xsnprintf(hdr, *hdrlen, \"%s %lu\", type, len)+1;\n> +\t*hdrlen = xsnprintf(hdr, *hdrlen, \"%s %\" PRIuMAX, type, (uintmax_t)len)+1;\n>  \n>  \t/* Sha1.. */\n>  \tgit_SHA1_Init(&c);\n> @@ -3275,7 +3275,7 @@ static int write_buffer(int fd, const void *buf, size_t len)\n>  \treturn 0;\n>  }\n>  \n> -int hash_sha1_file(const void *buf, unsigned long len, const char *type,\n> +int hash_sha1_file(const void *buf, size_t len, const char *type,\n>                     unsigned char *sha1)\n>  {\n>  \tchar hdr[32];\n> @@ -3339,7 +3339,7 @@ static int create_tmpfile(struct strbuf *tmp, const char *filename)\n>  }\n>  \n>  static int write_loose_object(const unsigned char *sha1, char *hdr, int hdrlen,\n> -\t\t\t      const void *buf, unsigned long len, time_t mtime)\n> +\t\t\t      const void *buf, size_t len, time_t mtime)\n>  {\n>  \tint fd, ret;\n>  \tunsigned char compressed[4096];\n> @@ -3423,7 +3423,7 @@ static int freshen_packed_object(const unsigned char *sha1)\n>  \treturn 1;\n>  }\n>  \n> -int write_sha1_file(const void *buf, unsigned long len, const char *type, unsigned char *sha1)\n> +int write_sha1_file(const void *buf, size_t len, const char *type, unsigned char *sha1)\n>  {\n>  \tchar hdr[32];\n>  \tint hdrlen = sizeof(hdr);\n> @@ -3437,7 +3437,7 @@ int write_sha1_file(const void *buf, unsigned long len, const char *type, unsign\n>  \treturn write_loose_object(sha1, hdr, hdrlen, buf, len, 0);\n>  }\n>  \n> -int hash_sha1_file_literally(const void *buf, unsigned long len, const char *type,\n> +int hash_sha1_file_literally(const void *buf, size_t len, const char *type,\n>  \t\t\t     unsigned char *sha1, unsigned flags)\n>  {\n>  \tchar *header;\n> @@ -3929,14 +3929,14 @@ int for_each_packed_object(each_packed_object_fn cb, void *data, unsigned flags)\n>  \n>  static int check_stream_sha1(git_zstream *stream,\n>  \t\t\t     const char *hdr,\n> -\t\t\t     unsigned long size,\n> +\t\t\t     size_t size,\n>  \t\t\t     const char *path,\n>  \t\t\t     const unsigned char *expected_sha1)\n>  {\n>  \tgit_SHA_CTX c;\n>  \tunsigned char real_sha1[GIT_MAX_RAWSZ];\n>  \tunsigned char buf[4096];\n> -\tunsigned long total_read;\n> +\tsize_t total_read;\n>  \tint status = Z_OK;\n>  \n>  \tgit_SHA1_Init(&c);\n> @@ -3992,7 +3992,7 @@ int read_loose_object(const char *path,\n>  {\n>  \tint ret = -1;\n>  \tvoid *map = NULL;\n> -\tunsigned long mapsize;\n> +\tsize_t mapsize;\n>  \tgit_zstream stream;\n>  \tchar hdr[32];\n>  \n> diff --git a/streaming.c b/streaming.c\n> index 04a8b99..448c4aa 100644\n> --- a/streaming.c\n> +++ b/streaming.c\n> @@ -77,7 +77,7 @@ struct git_istream {\n>  \n>  \t\tstruct {\n>  \t\t\tvoid *mapped;\n> -\t\t\tunsigned long mapsize;\n> +\t\t\tsize_t mapsize;\n>  \t\t\tchar hdr[32];\n>  \t\t\tint hdr_avail;\n>  \t\t\tint hdr_used;\n"},{"id":"326130","messageId":"20170811070600.GB15128@mail.zuhause","threadId":"46563","inReplyTo":"xmqqk22b12jz.fsf@gitster.mtv.corp.google.com","subject":"Re: [PATCH 5/9] Convert sha1_file.c to size_t","fromName":"Martin Koegler","fromEmail":"martin.koegler@chello.at","sentAt":"2017-08-11T07:06:00Z","receivedAt":"2017-08-11T07:06:13Z","isPatch":true,"sender":{"key":"martin.koegler@chello.at","avatar":"https://avatars.githubusercontent.com/u/1859030?v=4"},"body":"On Thu, Aug 10, 2017 at 03:27:28PM -0700, Junio C Hamano wrote:\n> Please do not start your patch series from 5/9 when there is no 1/9,\n> 2/9, 3/9, and 4/9.  It is seriously confusing.\n> \n> I am guessing that you are trying to split the series into\n> manageable pieces by going per call graph and codeflow.  I think it\n> is a more sensible approach than a single huge ball of wax we saw\n> earlier.\n\nThe later patches are further changes extending the previous series. The first, large\npatch can be splitted any more - it has alreay been generated by changing the delta code\nand fixing other functions until the codebase is working again.\n\nI didn't wanted to spam the mailing list with the same unchanged patches within a short timeframe.\n\nRegards,\nMartin\n"}]}