Commit a3df20cf0dcb9adb1c9f72b1495d24c39318569b

Carlos Martín Nieto 2018-05-24T19:00:13

submodule: the repostiory for _name_is_valid should not be const We might modify caches due to us trying to load the configuration to figure out what kinds of filesystem protections we should have.

diff --git a/src/submodule.c b/src/submodule.c
index 9334132..7d0e536 100644
--- a/src/submodule.c
+++ b/src/submodule.c
@@ -320,7 +320,7 @@ int git_submodule_lookup(
 	return 0;
 }
 
-int git_submodule_name_is_valid(const git_repository *repo, const char *name, int flags)
+int git_submodule_name_is_valid(git_repository *repo, const char *name, int flags)
 {
 	git_buf buf = GIT_BUF_INIT;
 	int error, isvalid;
@@ -336,8 +336,7 @@ int git_submodule_name_is_valid(const git_repository *repo, const char *name, in
 		git_buf_attach_notowned(&buf, name, strlen(name));
 	}
 
-	/* FIXME: Un-consting it to reduce the amount of diff */
-	isvalid =  git_path_isvalid((git_repository *)repo, buf.ptr, 0, flags);
+	isvalid =  git_path_isvalid(repo, buf.ptr, 0, flags);
 	git_buf_free(&buf);
 
 	return isvalid;
diff --git a/src/submodule.h b/src/submodule.h
index e188dbb..91a4e12 100644
--- a/src/submodule.h
+++ b/src/submodule.h
@@ -159,6 +159,6 @@ extern int git_submodule__map(
  * @param name the name to check
  * @param flags the `GIT_PATH` flags to use for the check (0 to use filesystem defaults)
  */
-extern int git_submodule_name_is_valid(const git_repository *repo, const char *name, int flags);
+extern int git_submodule_name_is_valid(git_repository *repo, const char *name, int flags);
 
 #endif