commit - 3516b818d980c345f14772c0ed6616701de5328f
commit + 3cab8b4df8d788ad4f46443c7cad990cd2f1909d
blob - cffa8b71e369595ae12df72d5ae5f97964e9265e
blob + ae0f79da9b119071a9e68b2b7e4dc9471dc0fbbe
--- lib/object_parse.c
+++ lib/object_parse.c
}
static void
-exec_privsep_child(int imsg_fds[2], const char *path)
+exec_privsep_child(int imsg_fds[2], const char *path, const char *repo_path)
{
close(imsg_fds[0]);
_exit(1);
}
- if (execl(path, path, (char *)NULL) == -1) {
+ if (execl(path, path, repo_path, (char *)NULL) == -1) {
fprintf(stderr, "%s: %s: %s\n", getprogname(), path,
strerror(errno));
_exit(1);
if (pid == -1)
return got_error_from_errno();
else if (pid == 0) {
- exec_privsep_child(imsg_fds, GOT_PATH_PROG_READ_OBJECT);
+ exec_privsep_child(imsg_fds, GOT_PATH_PROG_READ_OBJECT,
+ repo->path);
/* not reached */
}
if (pid == -1)
return got_error_from_errno();
else if (pid == 0) {
- exec_privsep_child(imsg_fds, GOT_PATH_PROG_READ_COMMIT);
+ exec_privsep_child(imsg_fds, GOT_PATH_PROG_READ_COMMIT,
+ repo->path);
/* not reached */
}
if (pid == -1)
return got_error_from_errno();
else if (pid == 0) {
- exec_privsep_child(imsg_fds, GOT_PATH_PROG_READ_TREE);
+ exec_privsep_child(imsg_fds, GOT_PATH_PROG_READ_TREE,
+ repo->path);
/* not reached */
}
if (pid == -1)
return got_error_from_errno();
else if (pid == 0) {
- exec_privsep_child(imsg_fds, GOT_PATH_PROG_READ_BLOB);
+ exec_privsep_child(imsg_fds, GOT_PATH_PROG_READ_BLOB,
+ repo->path);
/* not reached */
}