diff options
Diffstat (limited to 'src/lib/image.source.sh')
| -rw-r--r-- | src/lib/image.source.sh | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/src/lib/image.source.sh b/src/lib/image.source.sh index c190b87..f7cb715 100644 --- a/src/lib/image.source.sh +++ b/src/lib/image.source.sh @@ -66,15 +66,32 @@ warn_unsupported_incoming_files() { scalephotos() { local -i failed=0 local -a image_job_pids=() + # Passed by name to wait_for_image_job_slot and wait_for_image_jobs. + # shellcheck disable=SC2034 + local -A image_job_labels=() + # Passed by name to wait_for_image_job_slot and wait_for_image_jobs. + # shellcheck disable=SC2034 + local -A image_job_statuses=() local photo while IFS= read -r photo; do - wait_for_image_job_slot image_job_pids failed + wait_for_image_job_slot \ + image_job_pids \ + image_job_statuses \ + image_job_labels \ + failed scale_photo "$photo" & image_job_pids+=("$!") + # Read through a nameref in the job-pool helpers. + # shellcheck disable=SC2034 + image_job_labels["$!"]="image job for photo $photo" done < <(incoming_image_files) - wait_for_image_jobs image_job_pids failed + wait_for_image_jobs \ + image_job_pids \ + image_job_statuses \ + image_job_labels \ + failed if (( failed != 0 )); then return 1 fi |
