From aab8f5af4b594398356b47c0c2a2ce6f5a4ca080 Mon Sep 17 00:00:00 2001 From: Edward Thomson Date: Tue, 4 Dec 2012 16:40:09 -0600 Subject: [PATCH] hey don't stomp on my memory! --- src/checkout.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/checkout.c b/src/checkout.c index a3166bfa5..cec52c536 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; }