@@ -1087,7 +1087,7 @@ static int gitdiff_index(struct gitdiff_data *state,
* and optional space with octal mode.
*/
const char *ptr, *eol;
- int len;
+ size_t len;
const unsigned hexsz = the_hash_algo->hexsz;
ptr = strchr(line, '.');
@@ -2185,7 +2185,7 @@ static int parse_chunk(struct apply_state *state, char *buffer, unsigned long si
};
int i;
for (i = 0; binhdr[i]; i++) {
- int len = strlen(binhdr[i]);
+ size_t len = strlen(binhdr[i]);
if (len < size - hd &&
!memcmp(binhdr[i], buffer + hd, len)) {
state->linenr++;
@@ -2320,7 +2320,8 @@ static void update_pre_post_images(struct image *preimage,
{
struct image fixed_preimage = IMAGE_INIT;
size_t insert_pos = 0;
- int i, ctx, reduced;
+ int i, reduced;
+ size_t ctx;
const char *fixed;
/*
@@ -2418,7 +2419,7 @@ static int line_by_line_fuzzy_match(struct image *img,
struct image *postimage,
unsigned long current,
int current_lno,
- int preimage_limit)
+ size_t preimage_limit)
{
int i;
size_t imgoff = 0;
@@ -2492,7 +2493,7 @@ static int match_fragment(struct apply_state *state,
struct strbuf fixed = STRBUF_INIT;
char *fixed_buf;
size_t fixed_len;
- int preimage_limit;
+ size_t preimage_limit;
int ret;
if (preimage->line_nr + current_lno <= img->line_nr) {
@@ -2706,7 +2707,7 @@ static int find_pos(struct apply_state *state,
{
int i;
unsigned long backwards, forwards, current;
- int backwards_lno, forwards_lno, current_lno;
+ size_t backwards_lno, forwards_lno, current_lno;
/*
* When running with --allow-overlap, it is possible that a hunk is
@@ -2791,7 +2792,7 @@ static int find_pos(struct apply_state *state,
*/
static void update_image(struct apply_state *state,
struct image *img,
- int applied_pos,
+ size_t applied_pos,
struct image *preimage,
struct image *postimage)
{
@@ -2803,7 +2804,7 @@ static void update_image(struct apply_state *state,
size_t remove_count, insert_count, applied_at = 0;
size_t result_alloc;
char *result;
- int preimage_limit;
+ size_t preimage_limit;
/*
* If we are removing blank lines at the end of img,
@@ -4293,14 +4294,14 @@ static void patch_stats(struct apply_state *state, struct patch *patch)
if (lines > state->max_change)
state->max_change = lines;
if (patch->old_name) {
- int len = quote_c_style(patch->old_name, NULL, NULL, 0);
+ size_t len = quote_c_style(patch->old_name, NULL, NULL, 0);
if (!len)
len = strlen(patch->old_name);
if (len > state->max_len)
state->max_len = len;
}
if (patch->new_name) {
- int len = quote_c_style(patch->new_name, NULL, NULL, 0);
+ size_t len = quote_c_style(patch->new_name, NULL, NULL, 0);
if (!len)
len = strlen(patch->new_name);
if (len > state->max_len)
Some assigned variables are mistyped as `int`, including - those whose values come from a system function returning `size_t`, - those that are used for array indexing, - those that represent length/size/distance, some of which will trigger -Wsign-comparison warnings. Change some of them to `size_t`/`unsigned int`. Signed-off-by: Zejun Zhao <jelly.zhao.42@gmail.com> --- apply.c | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-)