From patchwork Sun Feb 16 07:28:38 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zejun Zhao X-Patchwork-Id: 13976342 Received: from mail-pj1-f68.google.com (mail-pj1-f68.google.com [209.85.216.68]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2EEAEB672 for ; Sun, 16 Feb 2025 07:29:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.68 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739690959; cv=none; b=D256f1RAlGKmpwf/IGa0/6hGvrvqWjFyoMnMe3hpchNukw2S4LIfy87R6AKEKo+AhiOVNfMkBd/Q+y8Coq2bAHV6AEPgD/F95a+HWg8B+qIWvciWMAc3Cyey9q6GYr3QFOZh+6XiTkc2vXCLRNKxy4Oo2OFhPnFgbnRdtNJ5IZY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739690959; c=relaxed/simple; bh=jZ21fjZiToFe/BirR2R07EQ503d5Ef2u3tRy/pzaR20=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=BhAi1WgDbNQboAf9kT2M0T52m6uNKYxbXpe9icrPgayNSn8ud5OuQG3UpzUUbIKTdef9AAdXD4BYMKgK1goQWx43p4TQuS7D7UBTp0lpSNVXWC1+MCs+HKkac2qLx0F1rs7wyzlbQyc4BXIDKzK8YDGE9ICTRyT34Jjo8hkXJx0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=aHial+In; arc=none smtp.client-ip=209.85.216.68 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="aHial+In" Received: by mail-pj1-f68.google.com with SMTP id 98e67ed59e1d1-2f83a8afcbbso5218572a91.1 for ; Sat, 15 Feb 2025 23:29:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739690957; x=1740295757; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=KDsErJcWezRLX3/qG14LsHrZlP6/2jx9fIjoxu8k+Fw=; b=aHial+InN0Lf0wwBp0mG96YsqJQRktJGabsMjGftQkFtffe/l5VGTkSTrGQVq14N7C LY1VaGVIOENJwkovYrfDEHyApTki3h/c7ieTA7KFNthGlCdINXBvtIoJAZ8THGKUrfhe 3XeWRpqc8zR+ouGmw9Wl4OKtqjusZ3ytVlL9bbOWKr62FQqiFJX6ucea3OTsdj62Fm8t xYK8Qk6Jxw5+jREc9rOxYKrcdML1dr3f3U+aoKbEPyEaqozZs0h/ySNlwPx7ND8queLj XkOq8+tMVgkR7pab1mY96Dq8Oe/nI42bupXf6KHMPylpnYHGAvTWWewBu+xS4SdEtByF KbxA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739690957; x=1740295757; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=KDsErJcWezRLX3/qG14LsHrZlP6/2jx9fIjoxu8k+Fw=; b=D4DfaTTUVn4Y79N5BX+VmLZjBkyFwMPL0Urg1LGkmTMB2X6zjF88521hA34jsVTykf 4ZN8Yw5yCbM7w/IggRi2FA8b2tfVbo3yAjnq4ZpKASuU8tKFe8PAWq+Zd6Td0vk+xL7M ihCDa5uZRD5sF6gl44acI3/bA1KKHU+Y/+zS+yOwfqSwZAGfjH2wG7xyrvLaSiRHh0Yb LQ0jdlYx7uTgv/L8gY0VXsAaIjeXD3M5SFRuJtb3Cwj8tsc3MgV05he7VrutsCoN1czs TecPUdSMYy39gYvCUIE94NS9CZHOdeOwi8tWoyD54p+qukq2zig5nZavFF/ToNtDYnbC rgAg== X-Gm-Message-State: AOJu0YyibAwuAw4ZBRlam1PLuXZ3oFobGrME8n+HSPO/fjURZBbhOJW0 ZvlZ79f2QDyjHX9p1QLsS8XJiWxBNrIok/UEX0Hhqrj/G9LgvhUB X-Gm-Gg: ASbGncszmQFHXiSiSz8yyP2CS4tqWMuf518opmWeWeT/mZhyRvOTak54vV7Z9fEpLSg ND+giEdktnfcO58+2JVODAVo8t23IeBw232kHgZVfvQRt8roocpCVUmwjLayyIDTXH2bbBP9bKx qdBjjkH4Z0ZwP9e+FnXAYUbiABotSzoFxlsc1Un+40KM7d78UAwTI4SYfC05p0TYRHFoaxwcMvJ TyO1nojS6c5FFUwVhqaWvbxlnohR0zFFrhhQkHWFSFkPKaPX8g4OuGJZ2GlHz7StX/TIRdQ04F1 oIMsAaivcRRtV8xTrT0lraEu2sVbSD68qrMS2bPvGb1QaBo8KI6S3uUOW2R5Nh9zohtvXsyJM60 Ryv950L3URnvn7QVmAlPaboYYZffUKrmw2g== X-Google-Smtp-Source: AGHT+IEyvcXSYFmllRoPAf/7tr8JNLxiQaCcEMvd+1uelpmW2p+KoVlI7IBg4aL6TObZH/qCsasv2A== X-Received: by 2002:a17:90b:1d46:b0:2fa:6793:e860 with SMTP id 98e67ed59e1d1-2fc0f7ef7d1mr22144217a91.0.1739690957358; Sat, 15 Feb 2025 23:29:17 -0800 (PST) Received: from Ubuntu-ROG-Strix-G512LV.. (ec2-18-166-75-244.ap-east-1.compute.amazonaws.com. [18.166.75.244]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fc327a9d68sm4483243a91.1.2025.02.15.23.29.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 15 Feb 2025 23:29:15 -0800 (PST) From: Zejun Zhao To: jelly.zhao.42@gmail.com Cc: git@vger.kernel.org, gitster@pobox.com, newren@gmail.com, ps@pks.im, karthik.188@gmail.com Subject: [PATCH v3 1/6] apply: correct type misuse in `apply.h` Date: Sun, 16 Feb 2025 07:28:38 +0000 Message-ID: <20250216072843.72385-2-jelly.zhao.42@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250216072843.72385-1-jelly.zhao.42@gmail.com> References: <20250205014055.737190-1-jelly.zhao.42@gmail.com> <20250216072843.72385-1-jelly.zhao.42@gmail.com> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 There are a few `int` fields of structs in `apply.h` that are only used as unsigned integer and are only assigned unsigned integer value. Some of these misuse of `int` type would cause -Wsign-comparison warnings. Fix this by - change `apply_state::max_change`'s type to `unsigned int` since it's just a counter of lines - change `apply_state::max_len`'s type to `size_t` since it's storing a length - change `patch::lines_added/deleted`'s types to `unsigned int` since they are just counters of lines - change the types of relevant variables in function `show_stats` and `patch_stats` Note that `printf`'s format string requires us to do some typecast (from `size_t` to `int`) on `max` in function `show_stats`. This is safe because we already set a upper bound of `50` for `max` before the cast. Signed-off-by: Zejun Zhao --- apply.c | 11 ++++++----- apply.h | 6 +++--- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/apply.c b/apply.c index 4a7b6120ac..4380a83386 100644 --- a/apply.c +++ b/apply.c @@ -2238,7 +2238,8 @@ static void show_stats(struct apply_state *state, struct patch *patch) { struct strbuf qname = STRBUF_INIT; char *cp = patch->new_name ? patch->new_name : patch->old_name; - int max, add, del; + size_t max; + unsigned int add, del; quote_c_style(cp, &qname, NULL, 0); @@ -2257,12 +2258,12 @@ static void show_stats(struct apply_state *state, struct patch *patch) } if (patch->is_binary) { - printf(" %-*s | Bin\n", max, qname.buf); + printf(" %-*s | Bin\n", (int) max, qname.buf); strbuf_release(&qname); return; } - printf(" %-*s |", max, qname.buf); + printf(" %-*s |", (int) max, qname.buf); strbuf_release(&qname); /* @@ -2273,7 +2274,7 @@ static void show_stats(struct apply_state *state, struct patch *patch) del = patch->lines_deleted; if (state->max_change > 0) { - int total = ((add + del) * max + state->max_change / 2) / state->max_change; + unsigned int total = ((add + del) * max + state->max_change / 2) / state->max_change; add = (add * max + state->max_change / 2) / state->max_change; del = total - add; } @@ -4287,7 +4288,7 @@ static void summary_patch_list(struct patch *patch) static void patch_stats(struct apply_state *state, struct patch *patch) { - int lines = patch->lines_added + patch->lines_deleted; + unsigned int lines = patch->lines_added + patch->lines_deleted; if (lines > state->max_change) state->max_change = lines; diff --git a/apply.h b/apply.h index 90e887ec0e..8cd22756e2 100644 --- a/apply.h +++ b/apply.h @@ -90,8 +90,8 @@ struct apply_state { * we've seen, and the longest filename. That allows us to do simple * scaling. */ - int max_change; - int max_len; + unsigned int max_change; + size_t max_len; /* * Records filenames that have been touched, in order to handle @@ -127,7 +127,7 @@ struct patch { int is_new, is_delete; /* -1 = unknown, 0 = false, 1 = true */ int rejected; unsigned ws_rule; - int lines_added, lines_deleted; + unsigned int lines_added, lines_deleted; int score; int extension_linenr; /* first line specifying delete/new/rename/copy */ unsigned int is_toplevel_relative:1; From patchwork Sun Feb 16 07:28:39 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zejun Zhao X-Patchwork-Id: 13976343 Received: from mail-pj1-f67.google.com (mail-pj1-f67.google.com [209.85.216.67]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 5CAB6B672 for ; Sun, 16 Feb 2025 07:29:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.67 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739690965; cv=none; b=AdwnYQacOfAiUbxSRkQDf7GKJ8SY0oQTo5JnedbLDEazO0MN0AQn7XvSxqdmTSuX6vvyg5A03mbkaZcXh89t+7iIkJ3Kn6zEbkC4PnlfPhV+q9cvOm951am+TJrvZrxY7RM08Icu/dG0G1XH7wr909+z/rGTufP1mXGGcXS/SZ4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739690965; c=relaxed/simple; bh=z8wA8sJ6bbCD0iLG/TqzGwbSyOpjsCw7a3IeAQH+Yro=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=UpTivPltOk8sRe42nQlFPKl2SK0ZSUqnMzFTfAB8cY5QXiawlfyDujR0zg4yb4vmXhtTT4Al2J0OStWkIv3KUdNuqe1BjytzAevymSn83d7a3QGu39fWg2xIbU0oT1Umsz836wH9YNDXwe4aWWKdIXk8JMRM+38z0WHgZzg1Xc0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=e4yZ3BKK; arc=none smtp.client-ip=209.85.216.67 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="e4yZ3BKK" Received: by mail-pj1-f67.google.com with SMTP id 98e67ed59e1d1-2f9d3d0f55dso4847176a91.1 for ; Sat, 15 Feb 2025 23:29:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739690963; x=1740295763; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=4FYGZS3ghMPe7aoFl9oMbE6U/jNx8JlezXHxAbQGEQs=; b=e4yZ3BKK99hcpYfKCB2QS7qafCcCFO23+xam0X5msNMxw8UNN/2qNWn6veE7U7nYy7 Rn7sEp4xRDXBvXtwOBPThg9J2ot849yH2wQ2ndr+7/SskxDBl8kkXHpHtHxBu4KmOI8q tkIxptGxTo7GZbhI3tYNP1um9UOEdQQK7GKnoGgo3b//LutMmmxX9A1CqPSJ/JFycF/Z ZL6VndiArdQaxoick3InF4C4RPjfH7/qDVFF67QxaK71Qs9hSMJ5AiRDw9YpPqGVXnLv ZFYIj6gkcscnSazGO/nMnHg3gbUf0iRBArLRqkPlMNcCrPjfYGaOL9jDPipk06lgJ0yL ecIQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739690963; x=1740295763; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=4FYGZS3ghMPe7aoFl9oMbE6U/jNx8JlezXHxAbQGEQs=; b=CmRF307D+BuO3ZYAQNm7Bazi2jxILubuTs7R1Ezf1dC2dqFd/Dmu5uJGrHSsPE7nJV K+tUzB2JT20AeGQXxqmXjAoT3Ii9WcXLjLFHf/SLt7xA8/PC10FXEGHSdqK9JuPSJxB2 FRKNWtD4F82V9DRL20ay6elIMJUbLJpel06E44dTkj0UvsWCYFV0ukwRrjRGhgYW/7Zv Hg5YyGE1Ra3ciAD/ai15hog+BgNygi9n1WIw3CJdVYqUZqqLpZ9K/syWhlY3/4KZerWi juQ329klkods6ioYtWbGWcnwbH4QvRAYv57K1gC0qJOfY/qCQvV+OjQWnWCCGoaIyyw9 Yxyg== X-Gm-Message-State: AOJu0Yya7FTC0FbCUUimIq8PZzBm77k02d1M6sxlSI3b6F01Fz71rzL/ BBGFxNW25Z0HFfTjsnF2QARGC8PUrW04SvhjQwXuVN7+I/sUQ+X/ X-Gm-Gg: ASbGncup6YbvkS5g1aYsN0+xAqtBPVeDFDm6LSGYTYC97jh9gbA6Mr5/Y4BLsNx11U2 75PBFWIRRXRaxI/WMfvWV3qUqO1OR4z33o0mMaNioJGuhQiXBD5MvlclG+1W5Pw7P+cT4BmJdZ1 c1TGfF/xk6Ga0pC0xQNfccgnLuZ9jMrWTX55Fj5ip15Zf5VWz0MpL5cvjPkN3w4DQ+Hd0WIh0qz hPQWf/7m+OHamryENbqJgWS8yfmyad9AcyOfbd84hMU/uZ9ECfOme/fLOxhFTLVh8v0s+0GD63D qEIETm2yWLoint7PidcoQQJHhRAiEeefGgfnS1Rxd2qMMECtMdCDwshL6Q0ViCCVGW7ZxDfVcRn Js/1BRQUzNfQi/UAsdkU62fBeivJwTtOUwg== X-Google-Smtp-Source: AGHT+IGt9sjMW97ZsEfGNLBXKHbIE8EI2GA3OsIobycROlFxkWTybpAh5LD7WMSQ4MhjzvoH/t1jjA== X-Received: by 2002:a17:90b:4f8b:b0:2f8:2c47:fb36 with SMTP id 98e67ed59e1d1-2fc4116aaa4mr8749080a91.33.1739690963528; Sat, 15 Feb 2025 23:29:23 -0800 (PST) Received: from Ubuntu-ROG-Strix-G512LV.. (ec2-18-166-75-244.ap-east-1.compute.amazonaws.com. [18.166.75.244]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fc327a9d68sm4483243a91.1.2025.02.15.23.29.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 15 Feb 2025 23:29:23 -0800 (PST) From: Zejun Zhao To: jelly.zhao.42@gmail.com Cc: git@vger.kernel.org, gitster@pobox.com, newren@gmail.com, ps@pks.im, karthik.188@gmail.com Subject: [PATCH v3 2/6] apply: change some variables from `int` to `size_t` Date: Sun, 16 Feb 2025 07:28:39 +0000 Message-ID: <20250216072843.72385-3-jelly.zhao.42@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250216072843.72385-1-jelly.zhao.42@gmail.com> References: <20250205014055.737190-1-jelly.zhao.42@gmail.com> <20250216072843.72385-1-jelly.zhao.42@gmail.com> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 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 --- apply.c | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/apply.c b/apply.c index 4380a83386..4aa47a22b9 100644 --- a/apply.c +++ b/apply.c @@ -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) From patchwork Sun Feb 16 07:28:40 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zejun Zhao X-Patchwork-Id: 13976344 Received: from mail-pj1-f67.google.com (mail-pj1-f67.google.com [209.85.216.67]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C2A02B672 for ; Sun, 16 Feb 2025 07:29:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.67 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739690973; cv=none; b=lY8z+uhtwDD1MdZcIqtpU0Zgi/v7jrJQnz+RkMyxVXHxmzX7agaclEg5rWOq2sm7JDP17UaipRc4L3ijCuUZ/TeWLN271QCc/zqLC9HK7jEKBQkWNpzukFuGfLjQXBd/xrzTpWWOZsqQwQ3m+O/B+SQOOMZXTfhBd72KDgHFj6I= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739690973; c=relaxed/simple; bh=rciC0SW+Yr/5yaagmpTvLXzLbX5cm7lphEzEdlDe4ms=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=eZQqS9Jko/NEX80NNy8kXakIU+rr5XTn0anohYFYKDJRI9OMrCaIqKEGr5Dc5QVIWzIY+3+n1gRGN8VCS3Vg69REQdz0CdBF6/kU4Jf+gifu7oDNos7amGkCqOnbZi1m9Cqmu+qNdWwzNARa3V94vfsGIRcQL9t68HDCu4s2DhY= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=hnnEZKfR; arc=none smtp.client-ip=209.85.216.67 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="hnnEZKfR" Received: by mail-pj1-f67.google.com with SMTP id 98e67ed59e1d1-2f9d3d0f55dso4847209a91.1 for ; Sat, 15 Feb 2025 23:29:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739690971; x=1740295771; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=q4CbWcd74Z6/kZLn+u1JJGKCW0TTt5p5nuDEp2pphoc=; b=hnnEZKfRaZg3rRduGiI+NLYitE7adnDgVmUdjxhIB0oB5ICcprO8QWvgvOwE3QHl0D 5KFsb1X86aiSDa+kg6f32w9J0rZtVAhDhnl1I006OfLlXkM2AV++saHVITotlAgeZdZ3 vKRXKlK5mUcxaOemia4n6IUqbJrq9g/a2h1CZTvodl6vyzEXywhsnvLk4XtFKP1TKtfy o8m8T5spWmRUAjdIniUcylssvtG0qImMbshQFXfmConNMSmHZMqptqP+/SEtp5cZJ+BV yDlnZmkA9Dmjs5AyiUcffryqTahjBcHnvR95rFZONTGUbtyHjt8jUQ5la58DAiVroHYL tvmQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739690971; x=1740295771; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=q4CbWcd74Z6/kZLn+u1JJGKCW0TTt5p5nuDEp2pphoc=; b=buETUkeyVbZ4pFFGS0n5NqHMg0zpyxglRcivDjFCjol+VeJR3EI9gWjIpDTXCV4MWa IPvBquLTGyC8Jh5lShyA7ZK8EtiNSex1fOEdvAqEkM8N2z8tcsrvBpksuD24C4I0wGAW 3XaOhk2uxseRaI3GSMUCpPfbsXk+8s2K7go4wHhrhJrjYMjKNRL6UWjBaLI2EIFbTlfK j3T+ADuBD07IEhbmhAd4VOeG63JUEqeyQRALdnwg7gdyZk4x+3Beph2aHF9N0i0fC7ZB 8ig+c1Shcd4jXYkGX0bmsrmmxj0XUHcpCEXujrfK1YvhxWVI4r0226pjGMVmR08ZEzji FEOw== X-Gm-Message-State: AOJu0YxFJ9hm0jJk8BWDxBZ6pH0OUi0OYKPfLm2crur/hsyGb8+HqsKK +wApgvzTrMV+SglJwsMPNVc7E7caTbAlhG3j/vVg4+Qs2X9ddMWYDtf7Cl58SdeuwlgGa94= X-Gm-Gg: ASbGnctM0PVyrbHS6niSQHeUDLb51vIiniURguc3Y41iZg/4QZhXHfoE6pP7aoDm/tb hbmQXZQcyLJyOqOK8F/6Y1f0E7MMWLar4NBSeM6z3VPJhBev6ujUaYV9q/QbOgHaHIaO66sTQQN FOwCIwcx5VNfV0eaVxc7yVAON60vOCsyZewYMaTHcJDFbqxVf5blaFmCe+N+vGW3SFJX4OibxNj JcBbbv0VbwxgaRYtZNlQuhlRl12PQuDS6zQHwqt6iGjqHRbdJP/OaWvyX2Qq4KzbVvgAIAfJbu+ RpUhatEiF1lgJoOeBW2TBF8CoQPrmmz0dXahHgmG0ae8Ng48HJqFnBenV3CUYQivVbBnJuUa+gs 5S+NroVnWd8M1cOUlKU/zascrjcGFcyN3fw== X-Google-Smtp-Source: AGHT+IEJ2XA5Up3Bq5p2tPnGmonZ5YhDnbdHjpIiDq+T+iCo8ccDX+0CNeFpy45GttFNmBfaMhuOiQ== X-Received: by 2002:a17:90b:3842:b0:2ee:5bc9:75b5 with SMTP id 98e67ed59e1d1-2fc40d13ea8mr8586866a91.4.1739690971038; Sat, 15 Feb 2025 23:29:31 -0800 (PST) Received: from Ubuntu-ROG-Strix-G512LV.. (ec2-18-166-75-244.ap-east-1.compute.amazonaws.com. [18.166.75.244]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fc327a9d68sm4483243a91.1.2025.02.15.23.29.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 15 Feb 2025 23:29:29 -0800 (PST) From: Zejun Zhao To: jelly.zhao.42@gmail.com Cc: git@vger.kernel.org, gitster@pobox.com, newren@gmail.com, ps@pks.im, karthik.188@gmail.com Subject: [PATCH v3 3/6] apply: do a typecast to eliminate warnings Date: Sun, 16 Feb 2025 07:28:40 +0000 Message-ID: <20250216072843.72385-4-jelly.zhao.42@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250216072843.72385-1-jelly.zhao.42@gmail.com> References: <20250205014055.737190-1-jelly.zhao.42@gmail.com> <20250216072843.72385-1-jelly.zhao.42@gmail.com> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 `git_hdr_len` is an `int` variable that can be negative and is used to compare against a `len` of `size_t`, which will trigger -Wsign-comparison warnings Cast `git_hdr_len` to `size_t` after an above-zero check. Signed-off-by: Zejun Zhao --- apply.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apply.c b/apply.c index 4aa47a22b9..ac3e599bdf 100644 --- a/apply.c +++ b/apply.c @@ -1592,7 +1592,7 @@ static int find_header(struct apply_state *state, size, patch); if (git_hdr_len < 0) return -128; - if (git_hdr_len <= len) + if ((size_t) git_hdr_len <= len) continue; *hdrsize = git_hdr_len; return offset; From patchwork Sun Feb 16 07:28:41 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zejun Zhao X-Patchwork-Id: 13976345 Received: from mail-pj1-f66.google.com (mail-pj1-f66.google.com [209.85.216.66]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 230ADB672 for ; Sun, 16 Feb 2025 07:29:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.66 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739690979; cv=none; b=rdPe1rEjqFpQA9cCzA/+7OkjZ2CzriWDbBjDb3x0iRSuC4B0lCr7JkqjZRVq4rrw5kgr51kDzfGLCy8jz2ENQiuOKpscmuKCcoonQNDvRUtmNYSM1OGvNc9wNZ+pFJTghxwepFTq6E3zbWFlmlhE2lPHrsijimt5IHdlWNjstMk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739690979; c=relaxed/simple; bh=vKr/pg3yMzpA+MxhU/qoGWvQSbkPnEJ/Uk6JR12KSPI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=TUNp14PcFW31B41cYRZHRe7G9/WxnVXCLz+7BYBTF1UIIPEV7uRZbx9ublMagRIW7mGoHFN2pHRNDP2z1xCSQBnW+Rl2MaRkMwcsBtKtWPAHsD+QCu6fiza8E12+qoe34y4dNtCsr/p4OO97VOD+ikjl8reay3uNJFD0tGqDqzc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=YTXjLQPF; arc=none smtp.client-ip=209.85.216.66 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="YTXjLQPF" Received: by mail-pj1-f66.google.com with SMTP id 98e67ed59e1d1-2fc1843495eso4163589a91.1 for ; Sat, 15 Feb 2025 23:29:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739690977; x=1740295777; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Kdamt3MdkWJuJX+63qimZmQoqWXUypM3yC0R5oiycuo=; b=YTXjLQPFe0D2xbyjpXisebmIooLoohoa+UKgVoITKuWcYHJb0wFYkcF0LWfPu0ONwL jAwAgGrY1FnOIqgWYdOt1ByJPn4WykXSSDjWPSjO+9sIOzNqJIL8TLRwAmAnH3Fb51XP POKGlJxwTKCTViu+zysCkEPuxUqruQ5l7AewUpHTavvDo85zSNsf5KjXuLEWjkxb5uEf T5snpDkwdZABSqJXwF1YNAWLuCqoUJ43cJlIl8p1EqH0eNbz+bMroak4oQCthIQZW2Nk MWGGtaViXP9Z4eOFdXFojqZ9w0/LA/eO0mA4tYz56ouZuqXUlrEsnJCQFItMm2QjTv1x Oheg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739690977; x=1740295777; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Kdamt3MdkWJuJX+63qimZmQoqWXUypM3yC0R5oiycuo=; b=RJ+PS+femTFqBpIclTvT61rWR1Bwq4TS2mvS6cPLKviboLyW7Nfp8XY2p1hA95gCBr evTKz8cRpmSgTEEY/lX+ooA5jqrCVSx+9+uY/QcrI2qWwUpu7twySpHvj3ixBlh/JFrU fs2CZyS5tg+L5C+tHN36ZxaDZgmaURMYQ7mkKJFInNLuK7m7IFq7b/gx75L6ML0Zj2Ex qveqcwol/833reXnZrH3qfwNguowJmLFfdfcmgNMNyJVpfSUKU4wh4ioFg5j6JvlUHGs jbgh2CXWwqa77bEUmqmTeEs9av6mjjdoAIMNsDaqmTk0r8mAz0wXSuXSoZn1HX6+imS6 A1wg== X-Gm-Message-State: AOJu0YyRR7jGr+4eGxwtsIKJkFAGWMhEeB9ZqJFFjxCCrw6vf+tZ2wLk QAcA8UsI3ASXsbCPt0Q3h2Z5ls7Bbuus1dKxO3Y1DgG6cmftT0ST X-Gm-Gg: ASbGnct0C1g3pZcB0kPcei8Wo6lDuVrb4y6OQVKYzdh6rFcQyWlNc/xDPkexYnrRc9M RXvVbFK2gkMx5ry1JWlKHzMAEJgoGIF4ia0fe+YxUKfvrA1Loyn0IuMmrjF4Ip3NMxjWbv0Nevt /WyNtOJj3sHfbeipibwUiokuFfazEsvOFjxqztZkvvvKhn0/6byNsi456hmp+KMD4Ppw1zG6Vho xIeV7EwLxqEHf8dAW4hTdmWBdey4b9u9QA7G+hKuSzJXqEJQghkghwGioreACESH63FT92CKHYX T+TT3VQNWqeU9Bl+JuoTjDV8Fi7qMXY4+c0r7UCbSdrSCoYSZ9cvxmHtlFdYayEKgrK3yqVYLS3 hrANdBqvQo9n6IwSMq3t1AGqZmGrOJ3btsA== X-Google-Smtp-Source: AGHT+IFfv8VZOSzzR6eB/3R+aznwgf96apAXumTFO2XcpypaIbpVSmjUWyX4MtVajEh6cFZJCtisug== X-Received: by 2002:a17:90b:1d90:b0:2fa:b84:b320 with SMTP id 98e67ed59e1d1-2fc41045081mr8644533a91.24.1739690977383; Sat, 15 Feb 2025 23:29:37 -0800 (PST) Received: from Ubuntu-ROG-Strix-G512LV.. (ec2-18-166-75-244.ap-east-1.compute.amazonaws.com. [18.166.75.244]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fc327a9d68sm4483243a91.1.2025.02.15.23.29.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 15 Feb 2025 23:29:36 -0800 (PST) From: Zejun Zhao To: jelly.zhao.42@gmail.com Cc: git@vger.kernel.org, gitster@pobox.com, newren@gmail.com, ps@pks.im, karthik.188@gmail.com Subject: [PATCH v3 4/6] apply: cast some ptrdiff_t's to size_t's Date: Sun, 16 Feb 2025 07:28:41 +0000 Message-ID: <20250216072843.72385-5-jelly.zhao.42@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250216072843.72385-1-jelly.zhao.42@gmail.com> References: <20250205014055.737190-1-jelly.zhao.42@gmail.com> <20250216072843.72385-1-jelly.zhao.42@gmail.com> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 There are several -Wsign-comparison warnings in "apply.c", complaining about us comparing ptrdiff_t's with size_t's. Fix these warnings by typecasting from ptrdiff_t to size_t. As to why the casts is safe, - in function `date_len`, `date` is the starting address of a date at the end of the `line` and is guaranteed to be larger than (or equal to) `line` - in function `git_header_name`, `cp` is guaranteed to be larger than (or equal to) `second`, so `line + len` is greater than (or equal to) `cp` since we already treat `line + len - second` as a size_t - in function `git_header_name`, we are iterating `name` using `second`, so `second` is guaranteed to be greater than (or equal to) `name` Signed-off-by: Zejun Zhao --- apply.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/apply.c b/apply.c index ac3e599bdf..c554a52f28 100644 --- a/apply.c +++ b/apply.c @@ -540,7 +540,7 @@ static size_t date_len(const char *line, size_t len) !isdigit(*p++) || !isdigit(*p++)) /* Not a date. */ return 0; - if (date - line >= strlen("19") && + if ((size_t) (date - line) >= strlen("19") && isdigit(date[-1]) && isdigit(date[-2])) /* 4-digit year */ date -= strlen("19"); @@ -1207,7 +1207,7 @@ static char *git_header_name(int p_value, cp = skip_tree_prefix(p_value, second, line + llen - second); if (!cp) goto free_and_fail1; - if (line + llen - cp != first.len || + if ((size_t) (line + llen - cp) != first.len || memcmp(first.buf, cp, first.len)) goto free_and_fail1; return strbuf_detach(&first, NULL); @@ -1240,7 +1240,7 @@ static char *git_header_name(int p_value, goto free_and_fail2; len = sp.buf + sp.len - np; - if (len < second - name && + if (len < (size_t) (second - name) && !strncmp(np, name, len) && isspace(name[len])) { /* Good */ From patchwork Sun Feb 16 07:28:42 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zejun Zhao X-Patchwork-Id: 13976346 Received: from mail-pj1-f67.google.com (mail-pj1-f67.google.com [209.85.216.67]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CCAB5B672 for ; Sun, 16 Feb 2025 07:29:42 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.67 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739690984; cv=none; b=mzW8KU4RYFdZfekWM9way/46sGcZ4MzxG33msMIxnFBqp8hhfaJ0BUNBpuypkz1j3LLz+zEHOgSqBZuL5xpDiQTmBDCRjAzmeYY+8cXkRpCJIwgxYock66YH2B453SIcZyFiM5FQb8643SKYfOLJyw2St/TT0UHQsFrHaxLEcKk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739690984; c=relaxed/simple; bh=TN0ojrp51zqW8J7rcXXPeqm6uE/5AYYbdqolMrCvvkU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=DrPtJst0LeLUcKsE+t1GrOvDM/8PoiQvWYF3pI/KS/zULDUS+3C3/AUhLdKkxKasbQ2XY7JqJNj2QVEUMrBwnb2WPjmKM3NWFjW1NGymeybSkQAB6gU5yM0pTLVnlGNDP5OEqkISFkVrk6SC4MKPOfscRbDeb+PLxqL0WmcuZd0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=ZkBn8Sw9; arc=none smtp.client-ip=209.85.216.67 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="ZkBn8Sw9" Received: by mail-pj1-f67.google.com with SMTP id 98e67ed59e1d1-2f83a8afcbbso5218742a91.1 for ; Sat, 15 Feb 2025 23:29:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739690982; x=1740295782; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=YBMa0nrONzmcDM9DptX3HzWPQVgDnRV/Ho2DYLmhzzs=; b=ZkBn8Sw9QAO7diKw4waqiRud5X3FVroPDjB6gcX6ayOj6bQjIzUt+haZ48ENRQFxOr nz0Jolb1qtPyik+gKBe+/W6tLNFUaexmP+mSBmeubBSY4H4Pf3z4VVAsqkamtMwMu/Qz dVSKG9rMqzgvL8VgLKsLA2fpzMR83NWqGeD6e/MevqRVfpNIkda0w/MbPwHL+vOjizA1 ODVxTWG8YLVF9EyeQ8v3U26l2QpgvQMpnDrnQg7dfmfkmy9+sw4ZkTIaHmIhFwsH39ZZ 2kyJ84so8Psopva7s1EX1JyfyYoIHX5ZDReCm50NGEccxXDypIuFErLb0UWhEjOs4plB 8/iw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739690982; x=1740295782; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=YBMa0nrONzmcDM9DptX3HzWPQVgDnRV/Ho2DYLmhzzs=; b=K6l6RHuGFTkm4S7EslCIhrOil8fez44rHKeLKhG6JtQDaLJKUQ+JP53uZcJ2fphTmv M3X+7OY40BfBTrizq9G2VFxI2JJptmFXPwdemO0YkWx5xjGhunuU5dqP9Bv+xfE2wlTu E219tZRTgyF0cFBI+1Pre32lxDVuBIMzVHPd/rC4BdPweKtANGgtWf1cxQlAPC10kRJb Vc79BPgkVpXzK2jPd8creK5I0+/AZeCv2PXTqzt47Dozn+iB6PgnMW3wCg5VWJ87V5pZ 2id3Sgs19HBxkJt3qUBmigzJLJQ261Pg61yOIyYTJSF91WIXbmq4izjtD/L8P6SoeRso 4Fow== X-Gm-Message-State: AOJu0YxXed5VOhfwPhgpgVNdvjcIh8mIS/YIRYrFhO/Wzsokri9uA42L kD++2CwsE8wf0mF5IgWdOuIzNPa59Axk1zfktbKANGWFfZicBgnv X-Gm-Gg: ASbGncsmUuCKbYDN2A8BUWv2k0aFTSG1Ad/gi4qBjIbQksWK4ovnOmcsWS5vXaN2KSK 00jzWb4wGNXyzWYsNAofioyaqO4uoNRSTDH25U0zV8hxyOmOsBoDDZIUkpb5At8gBYqH7YPRcD5 FiNW0bVJe/gp2nfDRjbuZyRayRofQ6aoIvOnQ1ebNgZIb8mgWYwO2HCWimzBb987SInfTzYiXxi dtui6PDZG9F+Ro7qCp/Hk3frIrw5Mqvy8EwIDA9c98QKzqVUZtL/zpf0VGddsZC70RQJol5Uxvu PDrMVWE2wZNgtu9mDX8aLSwrgHTZckyevxhy1Vz2JrPPnqifJyxNXTJhYVBxQqZPlUvj9DFQzpe ZbkbJx+5BK0zWgd85nkBlt+I11uYI0/JsqQ== X-Google-Smtp-Source: AGHT+IF9l6jxDC1Hw1uYA9LAFw4gysHgPAI0FFGCnYvNADlwzuvdyhSuCeknhWI2jB3XbVq3l7mFEg== X-Received: by 2002:a17:90b:1e4e:b0:2fb:fe21:4841 with SMTP id 98e67ed59e1d1-2fc0f97535cmr23712962a91.8.1739690981986; Sat, 15 Feb 2025 23:29:41 -0800 (PST) Received: from Ubuntu-ROG-Strix-G512LV.. (ec2-18-166-75-244.ap-east-1.compute.amazonaws.com. [18.166.75.244]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fc327a9d68sm4483243a91.1.2025.02.15.23.29.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 15 Feb 2025 23:29:41 -0800 (PST) From: Zejun Zhao To: jelly.zhao.42@gmail.com Cc: git@vger.kernel.org, gitster@pobox.com, newren@gmail.com, ps@pks.im, karthik.188@gmail.com Subject: [PATCH v3 5/6] apply: use `size_t` loop counters Date: Sun, 16 Feb 2025 07:28:42 +0000 Message-ID: <20250216072843.72385-6-jelly.zhao.42@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250216072843.72385-1-jelly.zhao.42@gmail.com> References: <20250205014055.737190-1-jelly.zhao.42@gmail.com> <20250216072843.72385-1-jelly.zhao.42@gmail.com> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Some `int` loop counters trigger -Wsign-comparison warnings. Use `size_t` loop counters. Signed-off-by: Zejun Zhao --- apply.c | 30 +++++++++++++----------------- 1 file changed, 13 insertions(+), 17 deletions(-) diff --git a/apply.c b/apply.c index c554a52f28..4c26f608ee 100644 --- a/apply.c +++ b/apply.c @@ -1371,12 +1371,11 @@ int parse_git_diff_header(struct strbuf *root, { "index ", gitdiff_index }, { "", gitdiff_unrecognized }, }; - int i; len = linelen(line, size); if (!len || line[len-1] != '\n') break; - for (i = 0; i < ARRAY_SIZE(optable); i++) { + for (size_t i = 0; i < ARRAY_SIZE(optable); i++) { const struct opentry *p = optable + i; int oplen = strlen(p->str); int res; @@ -2097,7 +2096,6 @@ static void add_name_limit(struct apply_state *state, static int use_patch(struct apply_state *state, struct patch *p) { const char *pathname = p->new_name ? p->new_name : p->old_name; - int i; /* Paths outside are not touched regardless of "--include" */ if (state->prefix && *state->prefix) { @@ -2107,7 +2105,7 @@ static int use_patch(struct apply_state *state, struct patch *p) } /* See if it matches any of exclude/include rule */ - for (i = 0; i < state->limit_by_name.nr; i++) { + for (size_t i = 0; i < state->limit_by_name.nr; i++) { struct string_list_item *it = &state->limit_by_name.items[i]; if (!wildmatch(it->string, pathname, 0)) return (it->util != NULL); @@ -2183,8 +2181,7 @@ static int parse_chunk(struct apply_state *state, char *buffer, unsigned long si "Files ", NULL, }; - int i; - for (i = 0; binhdr[i]; i++) { + for (size_t i = 0; binhdr[i]; i++) { size_t len = strlen(binhdr[i]); if (len < size - hd && !memcmp(binhdr[i], buffer + hd, len)) { @@ -2320,7 +2317,7 @@ static void update_pre_post_images(struct image *preimage, { struct image fixed_preimage = IMAGE_INIT; size_t insert_pos = 0; - int i, reduced; + int reduced; size_t ctx; const char *fixed; @@ -2330,7 +2327,7 @@ static void update_pre_post_images(struct image *preimage, * free "oldlines". */ image_prepare(&fixed_preimage, buf, len, 1); - for (i = 0; i < fixed_preimage.line_nr; i++) + for (size_t i = 0; i < fixed_preimage.line_nr; i++) fixed_preimage.line[i].flag = preimage->line[i].flag; image_clear(preimage); *preimage = fixed_preimage; @@ -2339,7 +2336,7 @@ static void update_pre_post_images(struct image *preimage, /* * Adjust the common context lines in postimage. */ - for (i = reduced = ctx = 0; i < postimage->line_nr; i++) { + for (size_t i = reduced = ctx = 0; i < postimage->line_nr; i++) { size_t l_len = postimage->line[i].len; if (!(postimage->line[i].flag & LINE_COMMON)) { @@ -2421,7 +2418,7 @@ static int line_by_line_fuzzy_match(struct image *img, int current_lno, size_t preimage_limit) { - int i; + size_t i; size_t imgoff = 0; size_t preoff = 0; size_t extra_chars; @@ -2488,7 +2485,7 @@ static int match_fragment(struct apply_state *state, unsigned ws_rule, int match_beginning, int match_end) { - int i; + size_t i; const char *orig, *target; struct strbuf fixed = STRBUF_INIT; char *fixed_buf; @@ -2665,12 +2662,11 @@ static int match_fragment(struct apply_state *state, for ( ; i < preimage->line_nr; i++) { size_t fixstart = fixed.len; /* start of the fixed preimage */ size_t oldlen = preimage->line[i].len; - int j; /* Try fixing the line in the preimage */ ws_fix_copy(&fixed, orig, oldlen, ws_rule, NULL); - for (j = fixstart; j < fixed.len; j++) { + for (size_t j = fixstart; j < fixed.len; j++) { if (!isspace(fixed.buf[j])) { ret = 0; goto out; @@ -2800,7 +2796,7 @@ static void update_image(struct apply_state *state, * remove the copy of preimage at offset in img * and replace it with postimage */ - int i, nr; + int nr; size_t remove_count, insert_count, applied_at = 0; size_t result_alloc; char *result; @@ -2819,11 +2815,11 @@ static void update_image(struct apply_state *state, if (preimage_limit > img->line_nr - applied_pos) preimage_limit = img->line_nr - applied_pos; - for (i = 0; i < applied_pos; i++) + for (size_t i = 0; i < applied_pos; i++) applied_at += img->line[i].len; remove_count = 0; - for (i = 0; i < preimage_limit; i++) + for (size_t i = 0; i < preimage_limit; i++) remove_count += img->line[applied_pos + i].len; insert_count = postimage->buf.len; @@ -2852,7 +2848,7 @@ static void update_image(struct apply_state *state, img->line_nr - (applied_pos + preimage_limit)); COPY_ARRAY(img->line + applied_pos, postimage->line, postimage->line_nr); if (!state->allow_overlap) - for (i = 0; i < postimage->line_nr; i++) + for (size_t i = 0; i < postimage->line_nr; i++) img->line[applied_pos + i].flag |= LINE_PATCHED; img->line_nr = nr; } From patchwork Sun Feb 16 07:28:43 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Zejun Zhao X-Patchwork-Id: 13976347 Received: from mail-pj1-f66.google.com (mail-pj1-f66.google.com [209.85.216.66]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C4B70B672 for ; Sun, 16 Feb 2025 07:29:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.66 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739690989; cv=none; b=MEUThzQozPn+TaTB7zAGME5/OdBJXPkT5KgArmqDv1wnY7GEEXa/NivF4CFGJBuAIoP/TJD1bEXVEUPezZMnJs13m9gDfahDX/gSMmlPl3TZopzHBMK8UWVB4NPXLfy2KOfjXYHH8AqEB6fOk4HcUWmoY1JPqsLYmNWeSAbfRwY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739690989; c=relaxed/simple; bh=I6/qTJKimc2lx3D5F8J6AHpzZi/Ubqt2qpfNgAnG6vc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=j7306wNn5aYxbszdqbqrpg2dLHC/KVf8KNzYcoRPtVci8G58hPXmqtZnXPkN32J/nul1tUDxk2PlCpY1r10Gxv7MOokExRTBQqKUJaWZvFgjIFbtgApOe9Og3BrZ0WJyt7AiZah6OEzSW8Jmy+nw1tvnELTtNlMigJfjLD6/2rA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=IPoOAwJ1; arc=none smtp.client-ip=209.85.216.66 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="IPoOAwJ1" Received: by mail-pj1-f66.google.com with SMTP id 98e67ed59e1d1-2fa5af6d743so5176981a91.3 for ; Sat, 15 Feb 2025 23:29:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739690987; x=1740295787; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=b3Ud96/WWgCSe13VufGNvNpJdf4zmX/kgo7RJSv8AJM=; b=IPoOAwJ112SFkVWXFGIlPA1UX5xWARnVOBtwsik3vxv1wmrf1PYUlX3k33iIUgac2N BJeLEqWq1XvnrhCZbeqeXYt9mbdKWMmizAuSXjr/Qjg8N0RGrhgOM3Qf9aCn+inRgLck sBH8gWvYICbLPbAbk+ePP/s4JckQX4apz7k0vlQ3xBMM+YsdxjkECrAoOEeBokWHTCl9 oJpER4J9yMlrb0ekB9bSOPnzds9LCALIGSo48VotCzfQaCjje8yvkVK+fTDm9kDEWKmd K9l4Mbxe7etyAdDchLR5ZJdWn/2i/xTqxCGuD6fYtyELFq77cCnd3lmx1QBtNnO/r5Ob 2NFw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739690987; x=1740295787; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=b3Ud96/WWgCSe13VufGNvNpJdf4zmX/kgo7RJSv8AJM=; b=T/D9SOwl22DG9hZk8QZPNbLaDBdjX0NPtdj+6blPmlUTQon3r3gYWWXtCsdWnsTm6E NB7jVfA1vQN/Db+52yAGMJh0svUAl4Ek0wct6IFsCpm6SPKbsWrWYh38xYLSu5dh2SVm hvtP5G7/qLYjVeFazs0M6/eqY8OpIQ9JRKgmnAa2jEwHKs9yEZVE5kvZZgTQOvX5qgGH 33SkoeDm2sXqHX+TFlyI44I3WErhKKYSI2QlF+DPgwGZf1XZKeRnBPW5vP4xvZVLHJz2 w1CVSssLD8f/+Dh6XXnr38jyFN/kri8qk5g+6tvMQo1U4L2Z/q81JXmiqr8qhRBeQOxQ 4ewg== X-Gm-Message-State: AOJu0Yz3HxZewdR4ZZF1WqnV2ouOxRbCS4WCeJkC0mb07oMgjzIQPOdZ Mhu1idsROhos6JexAZCA7qQnZNerHsaaLnKr9B9R5M7lItLsHT/6 X-Gm-Gg: ASbGnctMZMBHFUqfhpXVri6+IvsC+h827GLNFShDnK+iibuCXS6VCebqJHnXX+zYsrS YEeAQHEjlAiNAxKHQ2yJNYj8SzUybY/qB0qOrpC5h5g/NHbCz4SqEGnBWO0iNeqnrjKKEyu2fBC yspqeSq3O8tM9c/qAIS+Tqplgmz9iS0yVTVBeYD9QQsNxENxCxHKgZIWbEDVzlU/P3MZejHhVlK OfbyRPCaubFKgeG5YsHFSsyabVJ/D34lvVXSAQftpqnRpygmvk8Z3CMHBbFB99QoaJnNcGWC5WZ IU4eRKp/gfiKvza9rr7T/phaGjbMyPC5ttgO+jxWbvWmkDWpDC0C4b94dWEmYYuJ3+UhniLDai9 3hVE14H+YAAbpZDSbd/RreAYD1B0jhSMdLA== X-Google-Smtp-Source: AGHT+IFvFSdTx78Jt0XZWFkdK3EMK/TM8+3II2dumvo1CMzNZG+TAjx9RhL7fMlbjSSd/m7KJdn+iw== X-Received: by 2002:a17:90b:1b46:b0:2f8:4a3f:dd2d with SMTP id 98e67ed59e1d1-2fc40f22bf0mr8312042a91.15.1739690986961; Sat, 15 Feb 2025 23:29:46 -0800 (PST) Received: from Ubuntu-ROG-Strix-G512LV.. (ec2-18-166-75-244.ap-east-1.compute.amazonaws.com. [18.166.75.244]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fc327a9d68sm4483243a91.1.2025.02.15.23.29.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 15 Feb 2025 23:29:46 -0800 (PST) From: Zejun Zhao To: jelly.zhao.42@gmail.com Cc: git@vger.kernel.org, gitster@pobox.com, newren@gmail.com, ps@pks.im, karthik.188@gmail.com Subject: [PATCH v3 6/6] apply: enable -Wsign-comparison checks Date: Sun, 16 Feb 2025 07:28:43 +0000 Message-ID: <20250216072843.72385-7-jelly.zhao.42@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250216072843.72385-1-jelly.zhao.42@gmail.com> References: <20250205014055.737190-1-jelly.zhao.42@gmail.com> <20250216072843.72385-1-jelly.zhao.42@gmail.com> Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Remove the `#define DISABLE_SIGN_COMPARE_WARNINGS` header line. Signed-off-by: Zejun Zhao --- apply.c | 1 - 1 file changed, 1 deletion(-) diff --git a/apply.c b/apply.c index 4c26f608ee..f1113d830d 100644 --- a/apply.c +++ b/apply.c @@ -8,7 +8,6 @@ */ #define USE_THE_REPOSITORY_VARIABLE -#define DISABLE_SIGN_COMPARE_WARNINGS #include "git-compat-util.h" #include "abspath.h"