diff options
| author | Örjan Ekeberg <ekeberg@kth.se> | 2019-12-13 00:35:35 +0100 |
|---|---|---|
| committer | David Bremner <david@tethera.net> | 2019-12-14 07:28:42 -0400 |
| commit | 1d9ec88d878d9817f18c98e71fa8b987d74f0508 (patch) | |
| tree | 4d7293296e9ee588aa25aef87287f9f809d5a06d | |
| parent | 6cd47227de09556dbc611d842c9b4b0f077598fc (diff) | |
emacs: limit search for attachment to stop at first mime-part
This commit changes the behaviour of notmuch-mua-attachment-check
so that it stops searching for notmuch-mua-attachment-regexp when a
new mime-part is reached. This avoids false warnings when matching
words occur inside forwarded messages.
| -rw-r--r-- | emacs/notmuch-mua.el | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/emacs/notmuch-mua.el b/emacs/notmuch-mua.el index 7fdd76bc..76572b87 100644 --- a/emacs/notmuch-mua.el +++ b/emacs/notmuch-mua.el @@ -137,17 +137,20 @@ Typically this is added to `notmuch-mua-send-hook'." ;; When the message mentions attachment... (save-excursion (message-goto-body) - (loop while (re-search-forward notmuch-mua-attachment-regexp (point-max) t) - ;; For every instance of the "attachment" string - ;; found, examine the text properties. If the text - ;; has either a `face' or `syntax-table' property - ;; then it is quoted text and should *not* cause the - ;; user to be asked about a missing attachment. - if (let ((props (text-properties-at (match-beginning 0)))) - (not (or (memq 'syntax-table props) - (memq 'face props)))) - return t - finally return nil)) + ;; Limit search from reaching other possible parts of the message + (let ((search-limit (search-forward "\n<#" nil t))) + (message-goto-body) + (loop while (re-search-forward notmuch-mua-attachment-regexp search-limit t) + ;; For every instance of the "attachment" string + ;; found, examine the text properties. If the text + ;; has either a `face' or `syntax-table' property + ;; then it is quoted text and should *not* cause the + ;; user to be asked about a missing attachment. + if (let ((props (text-properties-at (match-beginning 0)))) + (not (or (memq 'syntax-table props) + (memq 'face props)))) + return t + finally return nil))) ;; ...but doesn't have a part with a filename... (save-excursion (message-goto-body) |
