diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/evanix.c | 10 | ||||
-rw-r--r-- | src/jobs.c | 4 | ||||
-rw-r--r-- | src/queue.c | 6 |
3 files changed, 10 insertions, 10 deletions
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; } @@ -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; @@ -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]; 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); |