summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--builtin-apply.c7
-rw-r--r--builtin-diff.c3
-rw-r--r--cache.h4
-rw-r--r--combine-diff.c4
-rw-r--r--diff.c2
-rw-r--r--fsck-objects.c2
-rw-r--r--sha1_name.c2
7 files changed, 11 insertions, 13 deletions
diff --git a/builtin-apply.c b/builtin-apply.c
index 4573c9abb2..1c1d16f756 100644
--- a/builtin-apply.c
+++ b/builtin-apply.c
@@ -1684,7 +1684,7 @@ static int apply_binary(struct buffer_desc *desc, struct patch *patch)
}
get_sha1_hex(patch->new_sha1_prefix, sha1);
- if (!memcmp(sha1, null_sha1, 20)) {
+ if (is_null_sha1(sha1)) {
free(desc->buffer);
desc->alloc = desc->size = 0;
desc->buffer = NULL;
@@ -1916,11 +1916,6 @@ static int check_patch_list(struct patch *patch)
return error;
}
-static inline int is_null_sha1(const unsigned char *sha1)
-{
- return !memcmp(sha1, null_sha1, 20);
-}
-
static void show_index_list(struct patch *list)
{
struct patch *patch;
diff --git a/builtin-diff.c b/builtin-diff.c
index 82afce782d..40e5c96f30 100644
--- a/builtin-diff.c
+++ b/builtin-diff.c
@@ -68,8 +68,7 @@ static void stuff_change(struct diff_options *opt,
{
struct diff_filespec *one, *two;
- if (memcmp(null_sha1, old_sha1, 20) &&
- memcmp(null_sha1, new_sha1, 20) &&
+ if (!is_null_sha1(old_sha1) && !is_null_sha1(new_sha1) &&
!memcmp(old_sha1, new_sha1, 20))
return;
diff --git a/cache.h b/cache.h
index af7740258d..c7382996f6 100644
--- a/cache.h
+++ b/cache.h
@@ -210,6 +210,10 @@ extern char *sha1_pack_name(const unsigned char *sha1);
extern char *sha1_pack_index_name(const unsigned char *sha1);
extern const char *find_unique_abbrev(const unsigned char *sha1, int);
extern const unsigned char null_sha1[20];
+static inline int is_null_sha1(const unsigned char *sha1)
+{
+ return !memcmp(sha1, null_sha1, 20);
+}
int git_mkstemp(char *path, size_t n, const char *template);
diff --git a/combine-diff.c b/combine-diff.c
index 4c6bfed56e..ce063b4ffa 100644
--- a/combine-diff.c
+++ b/combine-diff.c
@@ -94,7 +94,7 @@ static char *grab_blob(const unsigned char *sha1, unsigned long *size)
{
char *blob;
char type[20];
- if (!memcmp(sha1, null_sha1, 20)) {
+ if (is_null_sha1(sha1)) {
/* deleted blob */
*size = 0;
return xcalloc(1, 1);
@@ -611,7 +611,7 @@ static void show_patch_diff(struct combine_diff_path *elem, int num_parent,
struct sline *sline; /* survived lines */
int mode_differs = 0;
int i, show_hunks;
- int working_tree_file = !memcmp(elem->sha1, null_sha1, 20);
+ int working_tree_file = is_null_sha1(elem->sha1);
int abbrev = opt->full_index ? 40 : DEFAULT_ABBREV;
mmfile_t result_file;
diff --git a/diff.c b/diff.c
index 2327e6065b..6a8c0c9c01 100644
--- a/diff.c
+++ b/diff.c
@@ -1102,7 +1102,7 @@ void fill_filespec(struct diff_filespec *spec, const unsigned char *sha1,
if (mode) {
spec->mode = canon_mode(mode);
memcpy(spec->sha1, sha1, 20);
- spec->sha1_valid = !!memcmp(sha1, null_sha1, 20);
+ spec->sha1_valid = !is_null_sha1(sha1);
}
}
diff --git a/fsck-objects.c b/fsck-objects.c
index 4ba3377aef..b0e882a99f 100644
--- a/fsck-objects.c
+++ b/fsck-objects.c
@@ -452,7 +452,7 @@ static int fsck_head_link(void)
if (strncmp(git_refs_heads_master + pfxlen, "refs/heads/", 11))
return error("HEAD points to something strange (%s)",
git_refs_heads_master + pfxlen);
- if (!memcmp(null_sha1, sha1, 20))
+ if (is_null_sha1(sha1))
return error("HEAD: not a valid git pointer");
return 0;
}
diff --git a/sha1_name.c b/sha1_name.c
index c5a05faeb6..f567454d22 100644
--- a/sha1_name.c
+++ b/sha1_name.c
@@ -191,7 +191,7 @@ const char *find_unique_abbrev(const unsigned char *sha1, int len)
int status, is_null;
static char hex[41];
- is_null = !memcmp(sha1, null_sha1, 20);
+ is_null = is_null_sha1(sha1);
memcpy(hex, sha1_to_hex(sha1), 40);
if (len == 40 || !len)
return hex;