Skip to contentSkip to conversation

git: replace two checks with one not equal check

PATCH New Rose via GitGitGadget 2 participants 5 messages Jan 9, 2023 – Dec 18, 2024

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 git: replace two checks with one not equal check

From: Seija Kijin <[email protected]>

(version < 2 || version > 2) looks silly
considering this is an integer.

---
git: replace two checks with one not equal check

(version < 2 || version > 2) looks silly considering this is an integer.

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1432%2FAtariDreams%2Fversion-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1432/AtariDreams/version-v1
Pull-Request: https://github.com/git/git/pull/1432

 builtin/show-index.c | 2 +-
 packfile.c           | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
builtin/show-index.c +1 -1
index 0e0b9fb95bc..ae5cbfdc407 100644
@@ -38,7 +38,7 @@ int cmd_show_index(int argc, const char **argv, const char *prefix)
 		die("unable to read header");
 	if (top_index[0] == htonl(PACK_IDX_SIGNATURE)) {
 		version = ntohl(top_index[1]);
-		if (version < 2 || version > 2)
+		if (version != 2)
 			die("unknown index version");
 		if (fread(top_index, 256 * 4, 1, stdin) != 1)
 			die("unable to read index");
packfile.c +1 -1
index c0d7dd93f46..428f572a263 100644
@@ -121,7 +121,7 @@ int load_idx(const char *path, const unsigned int hashsz, void *idx_map,
 
 	if (hdr->idx_signature == htonl(PACK_IDX_SIGNATURE)) {
 		version = ntohl(hdr->idx_version);
-		if (version < 2 || version > 2)
+		if (version != 2)
 			return error("index file %s is version %"PRIu32
 				     " and is not supported by this binary"
 				     " (try upgrading GIT to a newer version)",

base-commit: a38d39a4c50d1275833aba54c4dbdfce9e2e9ca1

Signature · 1 line
gitgitgadget
#1 lore raw

PATCH v2 1/1 git: replace two checks with one not equal check

From: Seija Kijin <[email protected]>

(version < 2 || version > 2) looks silly
considering this is an integer.

---
git: replace two checks with one not equal check

(version < 2 || version > 2) looks silly considering this is an integer.

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1432%2FAreaZR%2Fversion-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1432/AreaZR/version-v2
Pull-Request: https://github.com/git/git/pull/1432

Range-diff vs v1:

1: e9172aea097 ! 1: 07e0d614c21 git: replace two checks with one not equal check
@@ Commit message

## builtin/show-index.c ##
-@@ builtin/show-index.c: int cmd_show_index(int argc, const char **argv, const char *prefix) +@@ builtin/show-index.c: int cmd_show_index(int argc,
die("unable to read header");
if (top_index[0] == htonl(PACK_IDX_SIGNATURE)) {
version = ntohl(top_index[1]);

 builtin/show-index.c | 2 +-
 packfile.c           | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
builtin/show-index.c +1 -1
index f164c01bbea..5fb71a1c425 100644
@@ -44,7 +44,7 @@ int cmd_show_index(int argc,
 		die("unable to read header");
 	if (top_index[0] == htonl(PACK_IDX_SIGNATURE)) {
 		version = ntohl(top_index[1]);
-		if (version < 2 || version > 2)
+		if (version != 2)
 			die("unknown index version");
 		if (fread(top_index, 256 * 4, 1, stdin) != 1)
 			die("unable to read index");
packfile.c +1 -1
index 9c4bd81a8c7..de0662b2353 100644
@@ -114,7 +114,7 @@ int load_idx(const char *path, const unsigned int hashsz, void *idx_map,
 
 	if (hdr->idx_signature == htonl(PACK_IDX_SIGNATURE)) {
 		version = ntohl(hdr->idx_version);
-		if (version < 2 || version > 2)
+		if (version != 2)
 			return error("index file %s is version %"PRIu32
 				     " and is not supported by this binary"
 				     " (try upgrading GIT to a newer version)",

base-commit: 063bcebf0c917140ca0e705cbe0fdea127e90086

Signature · 1 line
gitgitgadget
#2 lore raw

PATCH v3 1/1 git: replace greater-than and less-than checks with one not equal check

From: Seija Kijin <[email protected]>

(version < 2 || version > 2) looks silly
considering this is an integer.

---
git: replace chain of greater-than and less-than checks with one not equal check

(version < 2 || version > 2) looks silly considering this is an integer.

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1432%2FAreaZR%2Fversion-v3
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1432/AreaZR/version-v3
Pull-Request: https://github.com/git/git/pull/1432

Range-diff vs v2:

1: 07e0d614c21 ! 1: 322d04519d5 git: replace two checks with one not equal check
@@ Metadata
Author: Seija Kijin <[email protected]>

## Commit message ##
- git: replace two checks with one not equal check
+ git: replace greater-than and less-than checks with one not equal check

(version < 2 || version > 2) looks silly considering this is an integer.

 builtin/show-index.c | 2 +-
 packfile.c           | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
builtin/show-index.c +1 -1
index f164c01bbea..5fb71a1c425 100644
@@ -44,7 +44,7 @@ int cmd_show_index(int argc,
 		die("unable to read header");
 	if (top_index[0] == htonl(PACK_IDX_SIGNATURE)) {
 		version = ntohl(top_index[1]);
-		if (version < 2 || version > 2)
+		if (version != 2)
 			die("unknown index version");
 		if (fread(top_index, 256 * 4, 1, stdin) != 1)
 			die("unable to read index");
packfile.c +1 -1
index 9c4bd81a8c7..de0662b2353 100644
@@ -114,7 +114,7 @@ int load_idx(const char *path, const unsigned int hashsz, void *idx_map,
 
 	if (hdr->idx_signature == htonl(PACK_IDX_SIGNATURE)) {
 		version = ntohl(hdr->idx_version);
-		if (version < 2 || version > 2)
+		if (version != 2)
 			return error("index file %s is version %"PRIu32
 				     " and is not supported by this binary"
 				     " (try upgrading GIT to a newer version)",

base-commit: 063bcebf0c917140ca0e705cbe0fdea127e90086

Signature · 1 line
gitgitgadget
#3 lore raw

PATCH v4 1/1 git: replace greater-than and less-than checks with one not equal check

From: Seija Kijin <[email protected]>

(version < 2 || version > 2) looks silly
considering this is an integer.

---
git: replace greater-than and less-than checks with one not equal check

(version < 2 || version > 2) looks silly considering this is an integer.

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1432%2FAreaZR%2Fversion-v4
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1432/AreaZR/version-v4
Pull-Request: https://github.com/git/git/pull/1432

Range-diff vs v3:

1: 322d04519d5 = 1: 503f6635522 git: replace greater-than and less-than checks with one not equal check

 builtin/show-index.c | 2 +-
 packfile.c           | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
builtin/show-index.c +1 -1
index f164c01bbea..5fb71a1c425 100644
@@ -44,7 +44,7 @@ int cmd_show_index(int argc,
 		die("unable to read header");
 	if (top_index[0] == htonl(PACK_IDX_SIGNATURE)) {
 		version = ntohl(top_index[1]);
-		if (version < 2 || version > 2)
+		if (version != 2)
 			die("unknown index version");
 		if (fread(top_index, 256 * 4, 1, stdin) != 1)
 			die("unable to read index");
packfile.c +1 -1
index 9c4bd81a8c7..de0662b2353 100644
@@ -114,7 +114,7 @@ int load_idx(const char *path, const unsigned int hashsz, void *idx_map,
 
 	if (hdr->idx_signature == htonl(PACK_IDX_SIGNATURE)) {
 		version = ntohl(hdr->idx_version);
-		if (version < 2 || version > 2)
+		if (version != 2)
 			return error("index file %s is version %"PRIu32
 				     " and is not supported by this binary"
 				     " (try upgrading GIT to a newer version)",

base-commit: 063bcebf0c917140ca0e705cbe0fdea127e90086

Signature · 1 line
gitgitgadget
#4 lore raw

Re: [PATCH v4] git: replace greater-than and less-than checks with one not equal check

builtin/show-index.c int cmd_show_index(int argc, · line 48

Quoted 5 lines · AreaZR via GitGitGadget
builtin/show-index.c +1 -1
 	if (top_index[0] == htonl(PACK_IDX_SIGNATURE)) {
 		version = ntohl(top_index[1]);
-		if (version < 2 || version > 2)
+		if (version != 2)
 			die("unknown index version");

I am of two minds. If the code never evolves and we will never support anything other than version #2, your rewrite certainly makes it easier to read. On the other hand, if we plan to ever learn to grok versions #3 and later, the original would be easier to se what is going on, i.e.

		if (version < VERSION_LB || VERSION_UB < version)
			die("version out of bounds");

and the code as written happens to have "2" as both lower- and upper-bound.

Of course when we do introduce version #3, this line must be updated anyway, but the final form would be as we have it with the second "2" replaced with "3", so leaving it in the current shape may be easier for the developer doing that work.

So I do not know if the proposed change is an improvement for the longer term.