diff options
author | Luke Smith <luke@lukesmith.xyz> | 2025-02-28 09:31:28 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-02-28 09:31:28 +0000 |
commit | ea8fef34387ca49765a76114e23098296dae2ac1 (patch) | |
tree | 9abb41eeab6bd30e02fd25666c44893b538a9f8d | |
parent | 8cb5f9d2e4b78894f912393c69740d99ee69e505 (diff) | |
parent | 43eceb55364dc0e6b1bf35ff461f7c2554ff8e8e (diff) |
Merge pull request #999 from jdujava/fix-multiline-subjects
Fix notifications for mails with multiline subject
-rwxr-xr-x | bin/mailsync | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/bin/mailsync b/bin/mailsync index 792e7af..eb23497 100755 --- a/bin/mailsync +++ b/bin/mailsync @@ -70,9 +70,10 @@ syncandnotify() { echo "$newcount new mail(s) for $2." [ -z "$MAILSYNC_MUTE" ] && for file in $new; do - # Extract and decode subject and sender from mail. - subject="$(sed -n "/^Subject:/ s|Subject: *|| p" "$file" | - perl -CS -MEncode -ne 'print decode("MIME-Header", $_)')" + # Extract and decode subject and sender from mail. + subject=$(awk '/^Subject: / && ++n == 1,/^.*: / && ++i == 2' "$file" | head -n-1 | + perl -CS -MEncode -ne 'print decode("MIME-Header", $_)' | + sed 's/^Subject: //' | tr -d '\n\t') from="$(sed -n "/^From:/ s|From: *|| p" "$file" | perl -CS -MEncode -ne 'print decode("MIME-Header", $_)')" from="${from% *}" ; from="${from%\"}" ; from="${from#\"}" |