Commit 1217c5b232a2343f711ecf4c4ed38211ee6a268a

Edward Thomson 2021-11-01T21:12:23

fs_path: remove now-unused validation functions

diff --git a/src/fs_path.c b/src/fs_path.c
index 5698014..957f389 100644
--- a/src/fs_path.c
+++ b/src/fs_path.c
@@ -1738,52 +1738,6 @@ int git_fs_path_validate_str_length_with_suffix(
 	return 0;
 }
 
-#ifdef GIT_WIN32
-GIT_INLINE(bool) should_validate_longpaths(git_repository *repo)
-{
-	int longpaths = 0;
-
-	if (repo &&
-	    git_repository__configmap_lookup(&longpaths, repo, GIT_CONFIGMAP_LONGPATHS) < 0)
-		longpaths = 0;
-
-	return (longpaths == 0);
-}
-
-#else
-
-GIT_INLINE(bool) should_validate_longpaths(git_repository *repo)
-{
-	GIT_UNUSED(repo);
-
-	return false;
-}
-#endif
-
-int git_fs_path_validate_workdir(git_repository *repo, const char *path)
-{
-	if (should_validate_longpaths(repo))
-		return git_fs_path_validate_filesystem(path, strlen(path));
-
-	return 0;
-}
-
-int git_fs_path_validate_workdir_with_len(
-	git_repository *repo,
-	const char *path,
-	size_t path_len)
-{
-	if (should_validate_longpaths(repo))
-		return git_fs_path_validate_filesystem(path, path_len);
-
-	return 0;
-}
-
-int git_fs_path_validate_workdir_buf(git_repository *repo, git_str *path)
-{
-	return git_fs_path_validate_workdir_with_len(repo, path->ptr, path->size);
-}
-
 int git_fs_path_normalize_slashes(git_str *out, const char *path)
 {
 	int error;
diff --git a/src/fs_path.h b/src/fs_path.h
index 116e8f9..dcedd5e 100644
--- a/src/fs_path.h
+++ b/src/fs_path.h
@@ -726,28 +726,6 @@ GIT_INLINE(int) git_fs_path_validate_filesystem(
 }
 
 /**
- * Validate a path relative to the repo's worktree.  This ensures that
- * the given working tree path is valid for the operating system/platform.
- * This will ensure that an absolute path is smaller than MAX_PATH on
- * Windows, while keeping `core.longpaths` configuration settings in mind.
- *
- * This should be checked by mechamisms like `git_checkout` after
- * contructing on-disk paths and before trying to write them.
- *
- * If the repository is null, no repository configuration is applied.
- */
-extern int git_fs_path_validate_workdir(
-	git_repository *repo,
-	const char *path);
-extern int git_fs_path_validate_workdir_with_len(
-	git_repository *repo,
-	const char *path,
-	size_t path_len);
-extern int git_fs_path_validate_workdir_buf(
-	git_repository *repo,
-	git_str *buf);
-
-/**
  * Convert any backslashes into slashes
  */
 int git_fs_path_normalize_slashes(git_str *out, const char *path);