commit - 1062a61bb848c75e2c75d6145c3cf643d314c493
commit + c122da9b86f71e517f2ea57b9d828e83e188c764
blob - ae7314d07929ec90ae1c9e9a8f74aea2e344bddb
blob + 2df5821acb36e16307473ce40fae65e904a9d9de
--- libexec/got-index-pack/got-index-pack.c
+++ libexec/got-index-pack/got-index-pack.c
for (i = 0; i < nitems(tmpfiles); i++)
tmpfiles[i] = NULL;
- memset(&pack, 0, sizeof(pack));
- pack.fd = -1;
- err = got_delta_cache_alloc(&pack.delta_cache);
- if (err)
- goto done;
-
if (imsgbuf_init(&ibuf, GOT_IMSG_FD_CHILD) == -1) {
warn("imsgbuf_init");
return 1;
}
imsgbuf_allow_fdpass(&ibuf);
+
+ memset(&pack, 0, sizeof(pack));
+ pack.fd = -1;
+ err = got_delta_cache_alloc(&pack.delta_cache);
+ if (err)
+ goto done;
#ifndef PROFILE
/* revoke access to most system calls */
if (pledge("stdio recvfd", NULL) == -1) {
err = got_error_from_errno("pledge");
got_privsep_send_error(&ibuf, err);
+ imsgbuf_clear(&ibuf);
return 1;
}
got_privsep_send_error(&ibuf, err);
fprintf(stderr, "%s: %s\n", getprogname(), err->msg);
got_privsep_send_error(&ibuf, err);
+ imsgbuf_clear(&ibuf);
exit(1);
}
+ imsgbuf_clear(&ibuf);
exit(0);
}