submodule: add better error handling to is_path_occupied
diff --git a/src/submodule.c b/src/submodule.c
index b9cdb19..cfde81a 100644
--- a/src/submodule.c
+++ b/src/submodule.c
@@ -176,7 +176,10 @@ static int is_path_occupied(bool *occupied, git_repository *repo, const char *pa
if ((error = git_path_to_dir(&dir)) < 0)
goto out;
- if ((error = git_index_find_prefix(NULL, index, dir.ptr)) == 0) {
+ if ((error = git_index_find_prefix(NULL, index, dir.ptr)) < 0 && error != GIT_ENOTFOUND)
+ goto out;
+
+ if (!error) {
giterr_set(GITERR_SUBMODULE,
"Directory '%s' already exists in the index", path);
*occupied = true;