From 2aa52fb69694d15a5ad1e2e9dd2894f13d383734 Mon Sep 17 00:00:00 2001 From: Someone Serge Date: Tue, 25 Jun 2024 17:19:58 +0000 Subject: comments: evanix.c --- include/jobs.h | 3 ++- src/evanix.c | 10 +++++----- src/jobs.c | 2 +- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/include/jobs.h b/include/jobs.h index 37445c1..2e30547 100644 --- a/include/jobs.h +++ b/include/jobs.h @@ -36,7 +36,8 @@ typedef enum { } job_read_state_t; int job_read(FILE *stream, struct job **jobs); -int jobs_init(FILE **stream, char *expr); +/* Spawns nix-eval-jobs and connects its stdout to stream */ +int jobs_init(FILE **stream, const char *expr); void job_free(struct job *j); int job_parents_list_insert(struct job *job, struct job *parent); void job_deps_list_rm(struct job *job, struct job *dep); diff --git a/src/evanix.c b/src/evanix.c index 01279d1..27ab428 100644 --- a/src/evanix.c +++ b/src/evanix.c @@ -33,22 +33,22 @@ static int evanix(char *expr) { struct queue_thread *queue_thread = NULL; struct build_thread *build_thread = NULL; - FILE *stream = NULL; + FILE *jobsStream = NULL; /* nix-eval-jobs stdout */ int ret = 0; - ret = jobs_init(&stream, expr); + ret = jobs_init(&jobsStream, expr); if (ret < 0) goto out_free; - ret = queue_thread_new(&queue_thread, stream); + ret = queue_thread_new(&queue_thread, jobsStream); if (ret < 0) { - free(stream); + free(jobsStream); goto out_free; } ret = build_thread_new(&build_thread, queue_thread->queue); if (ret < 0) { - free(stream); + free(jobsStream); goto out_free; } diff --git a/src/jobs.c b/src/jobs.c index 4e3926a..bda8d11 100644 --- a/src/jobs.c +++ b/src/jobs.c @@ -434,7 +434,7 @@ out_free_job: return ret; } -int jobs_init(FILE **stream, char *expr) +int jobs_init(FILE **stream, const char *expr) { size_t argindex; char *args[6]; -- cgit v1.2.3 From 4b43a81d6082b7c6fe70234a5df912b3218bee05 Mon Sep 17 00:00:00 2001 From: SomeoneSerge Date: Thu, 27 Jun 2024 17:06:10 +0000 Subject: job: "transitive" -> "!scheduled" --- include/jobs.h | 2 +- src/jobs.c | 2 +- src/queue.c | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/jobs.h b/include/jobs.h index 2e30547..7390306 100644 --- a/include/jobs.h +++ b/include/jobs.h @@ -10,7 +10,7 @@ struct output { struct job { char *name, *drv_path, *attr; - bool transitive; + bool scheduled; bool insubstituters; size_t outputs_size, outputs_filled; diff --git a/src/jobs.c b/src/jobs.c index bda8d11..7851fef 100644 --- a/src/jobs.c +++ b/src/jobs.c @@ -367,7 +367,7 @@ static int job_new(struct job **j, char *name, char *drv_path, print_err("%s", strerror(errno)); return -errno; } - job->transitive = true; + job->scheduled = false; job->outputs_size = 0; job->outputs_filled = 0; diff --git a/src/queue.c b/src/queue.c index 09eebb6..3a7ca52 100644 --- a/src/queue.c +++ b/src/queue.c @@ -41,7 +41,7 @@ static int queue_dag_isolate(struct job *job, struct job *keep_parent, job->parents_filled = 0; } - if (!job->transitive) + if (job->scheduled) CIRCLEQ_REMOVE(jobs, job, clist); ret = htab_delete(htab, job->drv_path); @@ -169,8 +169,8 @@ static int queue_push(struct queue *queue, struct job *job) } /* no duplicate entries in queue */ - if (job->transitive) { - job->transitive = false; + if (!job->scheduled) { + job->scheduled = true; CIRCLEQ_INSERT_TAIL(&queue->jobs, job, clist); } pthread_mutex_unlock(&queue->mutex); -- cgit v1.2.3