From: Michal Nazarewicz Date: Tue, 9 Feb 2016 03:05:34 +0000 (+1100) Subject: Optimise ‘point in message header’ check X-Git-Tag: emacs-26.0.90~2694 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=824a87f41f53eea3aa8ffcb9f065ce149213ebfb;p=emacs.git Optimise ‘point in message header’ check * lisp/gnus/message.el (message-point-in-header-p): Replace two unbound regular expression matches with a single bound string match thus reducing amount of work the function is doing. --- diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el index 8a7ed4fffbe..9460710a477 100644 --- a/lisp/gnus/message.el +++ b/lisp/gnus/message.el @@ -3524,12 +3524,12 @@ Message buffers and is not meant to be called directly." (defun message-point-in-header-p () "Return t if point is in the header." (save-excursion - (and - (not - (re-search-backward - (concat "^" (regexp-quote mail-header-separator) "\n") nil t)) - (re-search-forward - (concat "^" (regexp-quote mail-header-separator) "\n") nil t)))) + (save-restriction + (widen) + (let ((bound (+ (point-at-eol) 1)) case-fold-search) + (goto-char (point-min)) + (not (search-forward (concat "\n" mail-header-separator "\n") + bound t)))))) (defun message-do-auto-fill () "Like `do-auto-fill', but don't fill in message header."