execute: use structure initialization when filling in exec status

This commit is contained in:
Lennart Poettering 2018-07-17 16:00:21 +02:00
parent 2484bff32b
commit 2ed26ed065
1 changed files with 10 additions and 6 deletions

View File

@ -4342,18 +4342,22 @@ void exec_context_free_log_extra_fields(ExecContext *c) {
void exec_status_start(ExecStatus *s, pid_t pid) {
assert(s);
zero(*s);
s->pid = pid;
*s = (ExecStatus) {
.pid = pid,
};
dual_timestamp_get(&s->start_timestamp);
}
void exec_status_exit(ExecStatus *s, const ExecContext *context, pid_t pid, int code, int status) {
assert(s);
if (s->pid && s->pid != pid)
zero(*s);
if (s->pid != pid) {
*s = (ExecStatus) {
.pid = pid,
};
}
s->pid = pid;
dual_timestamp_get(&s->exit_timestamp);
s->code = code;
@ -4361,7 +4365,7 @@ void exec_status_exit(ExecStatus *s, const ExecContext *context, pid_t pid, int
if (context) {
if (context->utmp_id)
utmp_put_dead_process(context->utmp_id, pid, code, status);
(void) utmp_put_dead_process(context->utmp_id, pid, code, status);
exec_context_tty_reset(context, NULL);
}