|
@@ -104,6 +104,15 @@ listen_and_convert()
|
|
|
unsigned int clilen;
|
|
|
struct Job job;
|
|
|
|
|
|
+ pid_t child_pid = fork();
|
|
|
+ if (child_pid < 0) {
|
|
|
+ err("fork failed");
|
|
|
+ } else if (child_pid > 0) {
|
|
|
+ usleep(1000000);
|
|
|
+ // parent process
|
|
|
+ return 1;
|
|
|
+ }
|
|
|
+
|
|
|
clilen = sizeof(cli_addr);
|
|
|
|
|
|
postprocess_setup();
|
|
@@ -151,7 +160,6 @@ main(int argc, char *argv[])
|
|
|
|
|
|
if (argc != 4) {
|
|
|
printf("usage: %s burst-dir target-name save-dng\n", argv[0]);
|
|
|
- listen_and_convert();
|
|
|
exit(1);
|
|
|
}
|
|
|
|
|
@@ -166,7 +174,10 @@ main(int argc, char *argv[])
|
|
|
job.savedng = 1;
|
|
|
}
|
|
|
|
|
|
- queue_job(job);
|
|
|
+ if(queue_job(job)) return 0;
|
|
|
+
|
|
|
+ if(listen_and_convert())
|
|
|
+ queue_job(job);
|
|
|
|
|
|
return 0;
|
|
|
}
|