diff --git a/42sh/src/exec/launch_process.c b/42sh/src/exec/launch_process.c index fdf799f6..1ac985b2 100644 --- a/42sh/src/exec/launch_process.c +++ b/42sh/src/exec/launch_process.c @@ -6,7 +6,7 @@ /* By: jhalford +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2016/12/13 14:20:45 by jhalford #+# #+# */ -/* Updated: 2017/01/02 19:10:46 by jhalford ### ########.fr */ +/* Updated: 2017/01/03 18:01:30 by jhalford ### ########.fr */ /* */ /* ************************************************************************** */ diff --git a/42sh/src/exec/process_setgroup.c b/42sh/src/exec/process_setgroup.c index eb05b38b..acd46689 100644 --- a/42sh/src/exec/process_setgroup.c +++ b/42sh/src/exec/process_setgroup.c @@ -6,7 +6,7 @@ /* By: jhalford +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2016/12/13 17:48:10 by jhalford #+# #+# */ -/* Updated: 2016/12/13 17:48:11 by jhalford ### ########.fr */ +/* Updated: 2017/01/03 18:04:09 by jhalford ### ########.fr */ /* */ /* ************************************************************************** */ @@ -20,7 +20,7 @@ int process_setgroup(t_process *p) (void)p; job = &data_singleton()->exec.job; - pid = getpid(); + pid = p->pid; if (job->pgid == 0) job->pgid = pid; setpgid(pid, job->pgid); diff --git a/42sh/src/job-control/builtin_jobs.c b/42sh/src/job-control/builtin_jobs.c index 06980138..9504dca0 100644 --- a/42sh/src/job-control/builtin_jobs.c +++ b/42sh/src/job-control/builtin_jobs.c @@ -6,7 +6,7 @@ /* By: jhalford +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2016/12/15 17:43:01 by jhalford #+# #+# */ -/* Updated: 2017/01/02 19:11:19 by jhalford ### ########.fr */ +/* Updated: 2017/01/03 18:13:47 by jhalford ### ########.fr */ /* */ /* ************************************************************************** */ @@ -39,7 +39,7 @@ int builtin_jobs(const char *path, char *const av[], char *const envp[]) ft_printf("{mag}[%i] %c ", job->id, rank); if (lg) ft_printf("%i ", p->pid); - ft_printf("attr=%x ", job->attributes); + ft_printf("attr=%#b ", job->attributes); plist = job->first_process; while (plist) { diff --git a/42sh/src/job-control/job_addprocess.c b/42sh/src/job-control/job_addprocess.c index 1b1e714e..c1dd216e 100644 --- a/42sh/src/job-control/job_addprocess.c +++ b/42sh/src/job-control/job_addprocess.c @@ -6,7 +6,7 @@ /* By: jhalford +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2016/12/13 13:54:51 by jhalford #+# #+# */ -/* Updated: 2017/01/02 18:16:12 by jhalford ### ########.fr */ +/* Updated: 2017/01/03 18:16:00 by jhalford ### ########.fr */ /* */ /* ************************************************************************** */ @@ -29,9 +29,12 @@ int job_addprocess(t_process *p) DG("added new job [%i]", job->id); } job = jobc->first_job->content; - ft_lstadd(&job->first_process, ft_lstnew(p, sizeof(*p))); + if (p->pid > 0) + { + ft_lstadd(&job->first_process, ft_lstnew(p, sizeof(*p))); + DG("added process to first_job : %i", p->pid); + } if (JOB_IS_BG(job->attributes) && IS_PIPEEND(p->attributes)) job_notify_new(job); - DG("added process to first_job : %i", p->pid); return(0); } diff --git a/42sh/src/job-control/job_is_completed.c b/42sh/src/job-control/job_is_completed.c index 5c7f5c41..7bd9dc0f 100644 --- a/42sh/src/job-control/job_is_completed.c +++ b/42sh/src/job-control/job_is_completed.c @@ -6,7 +6,7 @@ /* By: jhalford +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2016/12/13 15:10:20 by jhalford #+# #+# */ -/* Updated: 2016/12/13 15:24:25 by jhalford ### ########.fr */ +/* Updated: 2017/01/03 18:12:26 by jhalford ### ########.fr */ /* */ /* ************************************************************************** */ @@ -22,7 +22,6 @@ int job_is_completed(int id) jobc = &data_singleton()->jobc; job = ft_lst_find(jobc->first_job, &id, job_cmp_id)->content; lst = job->first_process; - DG("check"); while (lst) { p = lst->content; diff --git a/42sh/src/job-control/process_mark_status.c b/42sh/src/job-control/process_mark_status.c index b35dbd68..85e709e6 100644 --- a/42sh/src/job-control/process_mark_status.c +++ b/42sh/src/job-control/process_mark_status.c @@ -6,7 +6,7 @@ /* By: jhalford +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2016/12/12 12:41:11 by jhalford #+# #+# */ -/* Updated: 2016/12/15 15:12:38 by jhalford ### ########.fr */ +/* Updated: 2017/01/03 18:01:15 by jhalford ### ########.fr */ /* */ /* ************************************************************************** */ @@ -29,7 +29,7 @@ int process_mark_status(pid_t pid, int status) { p->attributes |= PROCESS_COMPLETED; if (WIFSIGNALED(status)) - ft_printf("%d: Terminated by signal %d.\n", + ft_printf("{mag}%d: Terminated by signal %d.\n{eoc}", (int) pid, WTERMSIG(p->status)); } return(0);