Improve stability of message-hide-headers
* message.el (message-hide-headers): Use a pointer instead of tracking the "end-of-headers" point manually (bug#53991).
This commit is contained in:
parent
9844b152a5
commit
35bb4c1c3c
1 changed files with 8 additions and 11 deletions
|
@ -8625,26 +8625,23 @@ From headers in the original article."
|
|||
message-hidden-headers))
|
||||
(inhibit-point-motion-hooks t)
|
||||
(inhibit-modification-hooks t)
|
||||
(end-of-headers (point-min)))
|
||||
end-of-headers)
|
||||
(when regexps
|
||||
(save-excursion
|
||||
(save-restriction
|
||||
(message-narrow-to-headers)
|
||||
(setq end-of-headers (point-min-marker))
|
||||
(goto-char (point-min))
|
||||
(while (not (eobp))
|
||||
(if (not (message-hide-header-p regexps))
|
||||
(message-next-header)
|
||||
(let ((begin (point))
|
||||
header header-len)
|
||||
(let ((begin (point)))
|
||||
(message-next-header)
|
||||
(setq header (buffer-substring begin (point))
|
||||
header-len (- (point) begin))
|
||||
(delete-region begin (point))
|
||||
(goto-char end-of-headers)
|
||||
(insert header)
|
||||
(setq end-of-headers
|
||||
(+ end-of-headers header-len))))))))
|
||||
(narrow-to-region end-of-headers (point-max))))
|
||||
(let ((header (delete-and-extract-region begin (point))))
|
||||
(save-excursion
|
||||
(goto-char end-of-headers)
|
||||
(insert-before-markers header))))))))
|
||||
(narrow-to-region end-of-headers (point-max)))))
|
||||
|
||||
(defun message-hide-header-p (regexps)
|
||||
(let ((result nil)
|
||||
|
|
Loading…
Add table
Reference in a new issue