Skip to contentSkip to conversation

range-diff: heck for NULL over comparisons

PATCH Superseded Rose via GitGitGadget 1 participant 2 messages Dec 22, 2022 – Dec 23, 2022

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 range-diff: heck for NULL over comparisons

From: Seija Kijin <[email protected]>

Although at first it may seem easier to check for the same comparison that determined whether a_util or b_util is NULL or not, checking for null directly
would make more sense for developers
and static analysis tools, which false-flag this area specifically as having potential NULL pointers.

---
range-diff: heck for NULL over comparisons

Although at first it may seem easier to check for the same comparison that determined whether a_util or b_util is NULL or not, checking for null directly would make more sense for developers and static analysis tools, which false-flag this area specifically as having potential NULL pointers.

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

 range-diff.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)
range-diff.c +4 -4
index 8b7d81adc1b..a5f5996c0ec 100644
@@ -506,11 +506,11 @@ static void output(struct string_list *a, struct string_list *b,
 		b_util = j < b->nr ? b->items[j].util : NULL;
 
 		/* Skip all the already-shown commits from the LHS. */
-		while (i < a->nr && a_util->shown)
+		while (a_util && a_util->shown)
 			a_util = ++i < a->nr ? a->items[i].util : NULL;
 
 		/* Show unmatched LHS commit whose predecessors were shown. */
-		if (i < a->nr && a_util->matching < 0) {
+		if (a_util && a_util->matching < 0) {
 			if (!range_diff_opts->right_only)
 				output_pair_header(&opts, patch_no_width,
 					   &buf, &dashes, a_util, NULL);
@@ -519,7 +519,7 @@ static void output(struct string_list *a, struct string_list *b,
 		}
 
 		/* Show unmatched RHS commits. */
-		while (j < b->nr && b_util->matching < 0) {
+		while (b_util && b_util->matching < 0) {
 			if (!range_diff_opts->left_only)
 				output_pair_header(&opts, patch_no_width,
 					   &buf, &dashes, NULL, b_util);
@@ -527,7 +527,7 @@ static void output(struct string_list *a, struct string_list *b,
 		}
 
 		/* Show matching LHS/RHS pair. */
-		if (j < b->nr) {
+		if (b_util) {
 			a_util = a->items[b_util->matching].util;
 			output_pair_header(&opts, patch_no_width,
 					   &buf, &dashes, a_util, b_util);

base-commit: 7c2ef319c52c4997256f5807564523dfd4acdfc7

Signature · 1 line
gitgitgadget
#1 lore raw

PATCH v2 1/1 range-diff: check for NULL over comparisons

From: Seija Kijin <[email protected]>

Although at first it may seem easier to check for the same comparison that determined whether a_util or b_util is NULL or not, checking for null directly
would make more sense for developers
and static analysis tools, which false-flag this area specifically as having potential NULL pointers.

---
range-diff: check for NULL over comparisons

Although at first it may seem easier to check for the same comparison that determined whether a_util or b_util is NULL or not, checking for null directly would make more sense for developers and static analysis tools, which false-flag this area specifically as having potential NULL pointers.

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1415%2FAtariDreams%2Fmore-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1415/AtariDreams/more-v2
Pull-Request: https://github.com/git/git/pull/1415

Range-diff vs v1:

1: b0e92aaf227 ! 1: e3d850ff3ea range-diff: heck for NULL over comparisons
@@ Metadata
Author: Seija Kijin <[email protected]>

## Commit message ##
- range-diff: heck for NULL over comparisons
+ range-diff: check for NULL over comparisons

Although at first it may seem easier to check for the same comparison that

 range-diff.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)
range-diff.c +4 -4
index 8b7d81adc1b..a5f5996c0ec 100644
@@ -506,11 +506,11 @@ static void output(struct string_list *a, struct string_list *b,
 		b_util = j < b->nr ? b->items[j].util : NULL;
 
 		/* Skip all the already-shown commits from the LHS. */
-		while (i < a->nr && a_util->shown)
+		while (a_util && a_util->shown)
 			a_util = ++i < a->nr ? a->items[i].util : NULL;
 
 		/* Show unmatched LHS commit whose predecessors were shown. */
-		if (i < a->nr && a_util->matching < 0) {
+		if (a_util && a_util->matching < 0) {
 			if (!range_diff_opts->right_only)
 				output_pair_header(&opts, patch_no_width,
 					   &buf, &dashes, a_util, NULL);
@@ -519,7 +519,7 @@ static void output(struct string_list *a, struct string_list *b,
 		}
 
 		/* Show unmatched RHS commits. */
-		while (j < b->nr && b_util->matching < 0) {
+		while (b_util && b_util->matching < 0) {
 			if (!range_diff_opts->left_only)
 				output_pair_header(&opts, patch_no_width,
 					   &buf, &dashes, NULL, b_util);
@@ -527,7 +527,7 @@ static void output(struct string_list *a, struct string_list *b,
 		}
 
 		/* Show matching LHS/RHS pair. */
-		if (j < b->nr) {
+		if (b_util) {
 			a_util = a->items[b_util->matching].util;
 			output_pair_header(&opts, patch_no_width,
 					   &buf, &dashes, a_util, b_util);

base-commit: 7c2ef319c52c4997256f5807564523dfd4acdfc7

Signature · 1 line
gitgitgadget