summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick Steinhardt <ps@pks.im>2025-01-06 10:24:25 +0100
committerJunio C Hamano <gitster@pobox.com>2025-01-06 16:57:17 +0100
commitc1acf1a31761d0cfddc3ea6d39c92a6528cd9c5c (patch)
tree943bb1b0aa16f0fe870692989e41279dbb2b2646
parentobject-file: fix race in object collision check (diff)
downloadgit-c1acf1a31761d0cfddc3ea6d39c92a6528cd9c5c.tar.xz
git-c1acf1a31761d0cfddc3ea6d39c92a6528cd9c5c.zip
object-file: rename variables in `check_collision()`
Rename variables used in `check_collision()` to clearly identify which file is the source and which is the destination. This will make the next step easier to reason about when we start to treat those files different from one another. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--object-file.c40
1 files changed, 20 insertions, 20 deletions
diff --git a/object-file.c b/object-file.c
index 0293b93bbc..e2fa1be303 100644
--- a/object-file.c
+++ b/object-file.c
@@ -1974,56 +1974,56 @@ static void write_object_file_prepare_literally(const struct git_hash_algo *algo
hash_object_body(algo, &c, buf, len, oid, hdr, hdrlen);
}
-static int check_collision(const char *filename_a, const char *filename_b)
+static int check_collision(const char *source, const char *dest)
{
- char buf_a[4096], buf_b[4096];
- int fd_a = -1, fd_b = -1;
+ char buf_source[4096], buf_dest[4096];
+ int fd_source = -1, fd_dest = -1;
int ret = 0;
- fd_a = open(filename_a, O_RDONLY);
- if (fd_a < 0) {
+ fd_source = open(source, O_RDONLY);
+ if (fd_source < 0) {
if (errno != ENOENT)
- ret = error_errno(_("unable to open %s"), filename_a);
+ ret = error_errno(_("unable to open %s"), source);
goto out;
}
- fd_b = open(filename_b, O_RDONLY);
- if (fd_b < 0) {
+ fd_dest = open(dest, O_RDONLY);
+ if (fd_dest < 0) {
if (errno != ENOENT)
- ret = error_errno(_("unable to open %s"), filename_b);
+ ret = error_errno(_("unable to open %s"), dest);
goto out;
}
while (1) {
ssize_t sz_a, sz_b;
- sz_a = read_in_full(fd_a, buf_a, sizeof(buf_a));
+ sz_a = read_in_full(fd_source, buf_source, sizeof(buf_source));
if (sz_a < 0) {
- ret = error_errno(_("unable to read %s"), filename_a);
+ ret = error_errno(_("unable to read %s"), source);
goto out;
}
- sz_b = read_in_full(fd_b, buf_b, sizeof(buf_b));
+ sz_b = read_in_full(fd_dest, buf_dest, sizeof(buf_dest));
if (sz_b < 0) {
- ret = error_errno(_("unable to read %s"), filename_b);
+ ret = error_errno(_("unable to read %s"), dest);
goto out;
}
- if (sz_a != sz_b || memcmp(buf_a, buf_b, sz_a)) {
+ if (sz_a != sz_b || memcmp(buf_source, buf_dest, sz_a)) {
ret = error(_("files '%s' and '%s' differ in contents"),
- filename_a, filename_b);
+ source, dest);
goto out;
}
- if (sz_a < sizeof(buf_a))
+ if (sz_a < sizeof(buf_source))
break;
}
out:
- if (fd_a > -1)
- close(fd_a);
- if (fd_b > -1)
- close(fd_b);
+ if (fd_source > -1)
+ close(fd_source);
+ if (fd_dest > -1)
+ close(fd_dest);
return ret;
}