diff options
author | Robin Jarry <robin@jarry.cc> | 2023-04-10 11:49:32 +0200 |
---|---|---|
committer | Robin Jarry <robin@jarry.cc> | 2023-04-10 15:00:13 +0200 |
commit | dd575e2867b012b78d89503583ac9a368adcdd18 (patch) | |
tree | 140ba7a21ed878a612163702be47994e22eeb258 | |
parent | 423a78866ef2205e19b859ca3ec0b6405161e636 (diff) | |
download | aerc-dd575e2867b012b78d89503583ac9a368adcdd18.tar.gz |
wrap: do not strip signature delimiter trailing space
Some tools expect this trailing space to be present to detect email
signatures start.
Reported-by: Jd <john1doe@ya.ru>
Fixes: https://todo.sr.ht/~rjarry/aerc/131
Signed-off-by: Robin Jarry <robin@jarry.cc>
Tested-by: Jd <john1doe@ya.ru>
-rw-r--r-- | filters/vectors/wrap-quotes.expected | 3 | ||||
-rw-r--r-- | filters/vectors/wrap-quotes.in | 3 | ||||
-rw-r--r-- | filters/wrap.c | 12 |
3 files changed, 13 insertions, 5 deletions
diff --git a/filters/vectors/wrap-quotes.expected b/filters/vectors/wrap-quotes.expected index d76c7918..83671025 100644 --- a/filters/vectors/wrap-quotes.expected +++ b/filters/vectors/wrap-quotes.expected @@ -383,3 +383,6 @@ non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> tavu + +-- +salut diff --git a/filters/vectors/wrap-quotes.in b/filters/vectors/wrap-quotes.in index 83189298..ff1bef2e 100644 --- a/filters/vectors/wrap-quotes.in +++ b/filters/vectors/wrap-quotes.in @@ -14,3 +14,6 @@ Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer el >> - Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. Etiam mi mauris, lacinia iaculis augue vitae, maximus lobortis metus. Integer eleifend ante a sem feugiat fringilla. Maecenas non mattis sapien, ultrices porttitor urna. Phasellus condimentum a elit ac consectetur. Etiam venenatis id est et ornare. >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> tavu + +-- +salut diff --git a/filters/wrap.c b/filters/wrap.c index cfe86581..5f5279c8 100644 --- a/filters/wrap.c +++ b/filters/wrap.c @@ -246,11 +246,13 @@ static struct paragraph *parse_line(const wchar_t *buf) letters++; } } - /* strip trailing whitespace */ + /* strip trailing whitespace unless it is a signature delimiter */ flowed = false; - while (e > q && iswspace(buf[e - 1])) { - e--; - flowed = true; + if (wcscmp(&buf[q], L"-- ") != 0) { + while (e > q && iswspace(buf[e - 1])) { + e--; + flowed = true; + } } text_len = e - q; @@ -287,7 +289,7 @@ static bool is_continuation( if (is_empty(next->text)) /* empty or whitespace only line */ return false; - if (wcscmp(p->text, L"--") == 0) + if (wcscmp(p->text, L"--") == 0 || wcscmp(p->text, L"-- ") == 0) /* never join anything with signature start */ return false; if (p->flowed) |