Terminate argv with NULL before calling setup_revisions()
It is convention that argv should be terminated with NULL, even if argc is used to specify the size of argv. setup_revisions() requires this and may segfault otherwise. This patch makes sure that all argv (that I can find) is NULL terminated. Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
06f391906a
commit
a80aad7b85
2
bundle.c
2
bundle.c
@ -98,7 +98,7 @@ int verify_bundle(struct bundle_header *header, int verbose)
|
|||||||
*/
|
*/
|
||||||
struct ref_list *p = &header->prerequisites;
|
struct ref_list *p = &header->prerequisites;
|
||||||
struct rev_info revs;
|
struct rev_info revs;
|
||||||
const char *argv[] = {NULL, "--all"};
|
const char *argv[] = {NULL, "--all", NULL};
|
||||||
struct object_array refs;
|
struct object_array refs;
|
||||||
struct commit *commit;
|
struct commit *commit;
|
||||||
int i, ret = 0, req_nr;
|
int i, ret = 0, req_nr;
|
||||||
|
@ -2326,7 +2326,7 @@ int main(int argc, char **argv)
|
|||||||
new_refs = 0;
|
new_refs = 0;
|
||||||
for (ref = remote_refs; ref; ref = ref->next) {
|
for (ref = remote_refs; ref; ref = ref->next) {
|
||||||
char old_hex[60], *new_hex;
|
char old_hex[60], *new_hex;
|
||||||
const char *commit_argv[4];
|
const char *commit_argv[5];
|
||||||
int commit_argc;
|
int commit_argc;
|
||||||
char *new_sha1_hex, *old_sha1_hex;
|
char *new_sha1_hex, *old_sha1_hex;
|
||||||
|
|
||||||
@ -2406,6 +2406,7 @@ int main(int argc, char **argv)
|
|||||||
commit_argv[3] = old_sha1_hex;
|
commit_argv[3] = old_sha1_hex;
|
||||||
commit_argc++;
|
commit_argc++;
|
||||||
}
|
}
|
||||||
|
commit_argv[commit_argc] = NULL;
|
||||||
init_revisions(&revs, setup_git_directory());
|
init_revisions(&revs, setup_git_directory());
|
||||||
setup_revisions(commit_argc, commit_argv, &revs, NULL);
|
setup_revisions(commit_argc, commit_argv, &revs, NULL);
|
||||||
revs.edge_hint = 0; /* just in case */
|
revs.edge_hint = 0; /* just in case */
|
||||||
|
Loading…
Reference in New Issue
Block a user