зеркало из https://github.com/microsoft/git.git
Merge branch 'mt/dir-iterator-updates'
Leakfix. * mt/dir-iterator-updates: test-dir-iterator: use path argument directly dir-iterator: release strbuf after use
This commit is contained in:
Коммит
9179380aa6
|
@ -2151,8 +2151,10 @@ static struct ref_iterator *reflog_iterator_begin(struct ref_store *ref_store,
|
|||
strbuf_addf(&sb, "%s/logs", gitdir);
|
||||
|
||||
diter = dir_iterator_begin(sb.buf, 0);
|
||||
if(!diter)
|
||||
if (!diter) {
|
||||
strbuf_release(&sb);
|
||||
return empty_ref_iterator_begin();
|
||||
}
|
||||
|
||||
iter = xcalloc(1, sizeof(*iter));
|
||||
ref_iterator = &iter->base;
|
||||
|
|
|
@ -19,7 +19,6 @@ static const char *error_name(int error_number)
|
|||
*/
|
||||
int cmd__dir_iterator(int argc, const char **argv)
|
||||
{
|
||||
struct strbuf path = STRBUF_INIT;
|
||||
struct dir_iterator *diter;
|
||||
unsigned int flags = 0;
|
||||
int iter_status;
|
||||
|
@ -36,8 +35,7 @@ int cmd__dir_iterator(int argc, const char **argv)
|
|||
if (!*argv || argc != 1)
|
||||
die("dir-iterator needs exactly one non-option argument");
|
||||
|
||||
strbuf_add(&path, *argv, strlen(*argv));
|
||||
diter = dir_iterator_begin(path.buf, flags);
|
||||
diter = dir_iterator_begin(*argv, flags);
|
||||
|
||||
if (!diter) {
|
||||
printf("dir_iterator_begin failure: %s\n", error_name(errno));
|
||||
|
|
Загрузка…
Ссылка в новой задаче