summaryrefslogtreecommitdiff
path: root/src/refs.c
diff options
context:
space:
mode:
authornulltoken <emeric.fermas@gmail.com>2012-09-14 21:36:49 +0200
committernulltoken <emeric.fermas@gmail.com>2012-09-14 21:56:14 +0200
commitc2948c7754b8bd8059d2a5252ea419c937bbb1ca (patch)
tree11ac18519bdd30ea140023fcd7aa605893088dd0 /src/refs.c
parentf4ea176fa83297925cf145082b8f76ad44f88a7c (diff)
downloadlibgit2-c2948c7754b8bd8059d2a5252ea419c937bbb1ca.tar.gz
refs: prevent locked refs from being enumerated
Fix #936
Diffstat (limited to 'src/refs.c')
-rw-r--r--src/refs.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/refs.c b/src/refs.c
index cdf3cb96e..74c40e850 100644
--- a/src/refs.c
+++ b/src/refs.c
@@ -494,6 +494,10 @@ static int _dirent_loose_listall(void *_data, git_buf *full_path)
return 0; /* we are filtering out this reference */
}
+ /* Locked references aren't returned */
+ if (!git__suffixcmp(file_path, GIT_FILELOCK_EXTENSION))
+ return 0;
+
if (data->callback(file_path, data->callback_payload))
data->callback_error = GIT_EUSER;