提交 8be707de 编写于 作者: S Sergey Vlasov 提交者: Junio C Hamano

[PATCH] git-local-fetch: Fix error checking and leak in setup_indices()

setup_indices() did not check the return value of opendir(), and
did not have a corresponding closedir() call.
Signed-off-by: NSergey Vlasov <vsu@altlinux.ru>
Signed-off-by: NJunio C Hamano <junkio@cox.net>
上级 d35bbe0b
......@@ -38,6 +38,8 @@ static int setup_indices(void)
unsigned char sha1[20];
sprintf(filename, "%s/objects/pack/", path);
dir = opendir(filename);
if (!dir)
return -1;
while ((de = readdir(dir)) != NULL) {
int namelen = strlen(de->d_name);
if (namelen != 50 ||
......@@ -46,6 +48,7 @@ static int setup_indices(void)
get_sha1_hex(de->d_name + 5, sha1);
setup_index(sha1);
}
closedir(dir);
return 0;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册