Added #:redirect option to manifest.scm
[tlb/tomd.git] / src / guile_helpers.c
index b68a769..e8a80ac 100644 (file)
@@ -19,6 +19,7 @@
 #include <fcntl.h>
 #include <string.h>
 #include <stdio.h>
+#include <stdbool.h>
 #include <sys/wait.h>
 
 #include "../include/job.h"
@@ -68,6 +69,7 @@ static struct job load_job(SCM job_list, int index)
   SCM scm_name = get_name(scm_cur_job);
   SCM scm_cmd = get_cmd(scm_cur_job);
   SCM scm_args = get_args(scm_cur_job);
+  SCM scm_redirect = get_redirect(scm_cur_job);
 
   /* TODO > Handle these. */
   /* planned is to be able to run at different points, and at */
@@ -76,6 +78,7 @@ static struct job load_job(SCM job_list, int index)
   SCM scm_start_trigger = get_start_trigger(scm_cur_job);
   SCM scm_end_trigger = get_end_trigger(scm_cur_job);
 
+  bool redirect = scm_to_bool(scm_redirect);
   char *job_name = scm_to_locale_string(scm_name);
   char *job_cmd = scm_to_locale_string(scm_cmd);
   char *real_args[10];
@@ -89,6 +92,7 @@ static struct job load_job(SCM job_list, int index)
 
   ret.name = job_name;
   ret.cmd = job_cmd;
+  ret.redirect = redirect;
 
   for(int j = 1;
       j <= jlen;
@@ -177,21 +181,20 @@ void load_jobs(void)
       break;
     }
     tomd_p("JOB <%d>:", i);
-    tomd_p("     cmd:'%s'", jobs[i].cmd);
+    tomd_p("    cmd:'%s'", jobs[i].cmd);
     int j = 1;
     while(1){
       if(i >= 10 ||
          jobs[i].args[j] == NULL){
         break;
       }
-      tomd_p(" arg [%d]:'%s'", j, jobs[i].args[j]);
+      tomd_p("arg [%d]:'%s'", j, jobs[i].args[j]);
       j++;
     }
     i++;
   }
 }
 
-
 static int stdincache;
 static int stdoutcache;
 static int stderrcache;