Skip to contentSkip to conversation

Fix a typo in `each_file_in_pack_dir_fn()`'s declaration

PATCH In review Johannes Schindelin via GitGitGadget 2 participants 2 messages Nov 17, 2023 – Nov 19, 2023

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Fix a typo in `each_file_in_pack_dir_fn()`'s declaration

From: Johannes Schindelin <[email protected]>

One parameter is called file_pach. On the face of it, this looks as if it was supposed to talk about a path instead of a pach.

However, looking at the way this callback is called, it gets fed the d_name from a directory entry, which provides just the file name, not the full path. Therefore, let's fix this by calling the parameter file_name instead.

---
packfile.h: fix a typo

I stumbled over this typo yesterday. Nothing about this patch is urgent, of course, it can easily wait until v2.43.0 is released.

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1614%2Fdscho%2Fpackfile.h-typo-fix-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1614/dscho/packfile.h-typo-fix-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/1614

 packfile.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
packfile.h +1 -1
index c3692308b8d..28c8fd3e39a 100644
@@ -54,7 +54,7 @@ const char *pack_basename(struct packed_git *p);
 struct packed_git *parse_pack_index(unsigned char *sha1, const char *idx_path);
 
 typedef void each_file_in_pack_dir_fn(const char *full_path, size_t full_path_len,
-				      const char *file_pach, void *data);
+				      const char *file_name, void *data);
 void for_each_file_in_pack_dir(const char *objdir,
 			       each_file_in_pack_dir_fn fn,
 			       void *data);

base-commit: cfb8a6e9a93adbe81efca66e6110c9b4d2e57169

Signature · 1 line
gitgitgadget
#1 lore raw

"Johannes Schindelin via GitGitGadget" <[email protected]>

Quoted 1 line · writes:

Subject: Re: [PATCH] Fix a typo in each_file_in_pack_dir_fn()'s declaration

Let's have "packfile.[ch]: " before the title to tell what area the helper function is about.

packfile.h const char *pack_basename(struct packed_git *p); · line 57

Quoted 13 lines

From: Johannes Schindelin <[email protected]>

One parameter is called file_pach. On the face of it, this looks as if it was supposed to talk about a path instead of a pach.

However, looking at the way this callback is called, it gets fed the d_name from a directory entry, which provides just the file name, not the full path. Therefore, let's fix this by calling the parameter file_name instead.
...
typedef void each_file_in_pack_dir_fn(const char *full_path, size_t full_path_len,

packfile.h +1 -1
-				      const char *file_pach, void *data);
+				      const char *file_name, void *data);

Very good observation. We form a pathname to a file in a "objects/pack/" subdirectory by concatenating this parameter after the full_path/full_path_len parameter, which has the path to that subdirectory, so "file_name" definitely is a much better name.

The "full_path" that does not say full path to what directory may have room for improvement ("leading_path" or even "packdir"), but that's OK.

Thanks for spotting.

Quoted 5 lines

void for_each_file_in_pack_dir(const char *objdir,

packfile.h +0 -0
 			       each_file_in_pack_dir_fn fn,
 			       void *data);

base-commit: cfb8a6e9a93adbe81efca66e6110c9b4d2e57169