From 42a5256de2c5182ddcece78d3da54ea91cfbf088 Mon Sep 17 00:00:00 2001 From: "martin f. krafft" Date: Mon, 24 Sep 2007 18:57:18 +0200 Subject: [PATCH] use proper output format which does not truncate fields --- bin/process-delayed-queue | 67 ++++++++++++++++++++------------------- 1 file changed, 34 insertions(+), 33 deletions(-) diff --git a/bin/process-delayed-queue b/bin/process-delayed-queue index fd84840..e978a40 100755 --- a/bin/process-delayed-queue +++ b/bin/process-delayed-queue @@ -10,39 +10,40 @@ DELAYED_QUEUE_DB=$HOME/.var/procmail/delayed-queue.sqlite QUERY='select * from messages where release_ts < strftime("%s", "now")' -$SQLITE -column $DELAYED_QUEUE_DB "$QUERY" | while read msgid basefile ts; do - - file="$MAILDIR/$basefile" - files="$file ${file}:2," - - basename="${file##*/}" - dirname="${file%/*}" - case "${dirname##*/}" in - cur) - files="$files ${file}:2,S" - file="${dirname%/cur}/new/$basename" - files="$files $file ${file}:2," - ;; - new) - file="${dirname%/new}/cur/$basename" - files="$files ${file}:2, ${file}:2,S" - ;; - esac - - found=0 - for file in $files; do - if [ -f "$file" ]; then - $RESUBMIT "$file" - echo "I: resubmitted $msgid" - found=1 - break +$SQLITE -list -separator ' ' $DELAYED_QUEUE_DB "$QUERY" \ + | while read msgid basefile ts; do + + file="$MAILDIR/$basefile" + files="$file ${file}:2," + + basename="${file##*/}" + dirname="${file%/*}" + case "${dirname##*/}" in + cur) + files="$files ${file}:2,S" + file="${dirname%/cur}/new/$basename" + files="$files $file ${file}:2," + ;; + new) + file="${dirname%/new}/cur/$basename" + files="$files ${file}:2, ${file}:2,S" + ;; + esac + + found=0 + for file in $files; do + if [ -f "$file" ]; then + $RESUBMIT "$file" + echo "I: resubmitted $msgid" + found=1 + break + fi + done + + $SQLITE $DELAYED_QUEUE_DB "delete from messages where msgid = '$msgid'" + + if [ $found -eq 0 ]; then + echo "E: message $msgid not found in $basefile" >&2 fi - done - - $SQLITE $DELAYED_QUEUE_DB "delete from messages where msgid = '$msgid'" - - if [ $found -eq 0 ]; then - echo "E: message $msgid not found in $basefile" >&2 - fi done -- 2.39.5