Commit 16e6cee2fdfa724e91f8656ad64ec87bd24fe184

Vicent Martí 2012-12-04T14:47:25

Merge pull request #1119 from ethomson/symlink_cast_ouch Hey that's not an int!

diff --git a/src/checkout.c b/src/checkout.c
index a3166bf..cec52c5 100644
--- a/src/checkout.c
+++ b/src/checkout.c
@@ -203,21 +203,25 @@ static int checkout_blob(
 	return error;
 }
 
-static int retrieve_symlink_caps(git_repository *repo, bool *can_symlink)
+static int retrieve_symlink_caps(git_repository *repo, bool *out)
 {
 	git_config *cfg;
+    int can_symlink = 0;
 	int error;
 
 	if (git_repository_config__weakptr(&cfg, repo) < 0)
 		return -1;
 
-	error = git_config_get_bool((int *)can_symlink, cfg, "core.symlinks");
+	error = git_config_get_bool(&can_symlink, cfg, "core.symlinks");
 
 	/* If "core.symlinks" is not found anywhere, default to true. */
 	if (error == GIT_ENOTFOUND) {
-		*can_symlink = true;
+		can_symlink = true;
 		error = 0;
 	}
+        
+    if (error >= 0)
+        *out = can_symlink;
 
 	return error;
 }