Remove old cl-assert calls in 'newline'

* lisp/simple.el (newline): Remove cl-assert calls
that didn't seem to be helping us debug Bug#18913,
and that caused problems as reported in Bug#28280.
Suggested by Glenn Morris (Bug#28280#8).
This commit is contained in:
Paul Eggert 2017-09-17 22:32:31 -07:00
parent 059184e645
commit 6359fe630a

View file

@ -434,10 +434,6 @@ A non-nil INTERACTIVE argument means to run the `post-self-insert-hook'."
;; Do the rest in post-self-insert-hook, because we want to do it ;; Do the rest in post-self-insert-hook, because we want to do it
;; *before* other functions on that hook. ;; *before* other functions on that hook.
(lambda () (lambda ()
;; We are not going to insert any newlines if arg is
;; non-positive.
(or (and (numberp arg) (<= arg 0))
(cl-assert (eq ?\n (char-before))))
;; Mark the newline(s) `hard'. ;; Mark the newline(s) `hard'.
(if use-hard-newlines (if use-hard-newlines
(set-hard-newline-properties (set-hard-newline-properties
@ -456,25 +452,22 @@ A non-nil INTERACTIVE argument means to run the `post-self-insert-hook'."
;; starts a page. ;; starts a page.
(or was-page-start (or was-page-start
(move-to-left-margin nil t))))) (move-to-left-margin nil t)))))
(unwind-protect (if (not interactive)
(if (not interactive) ;; FIXME: For non-interactive uses, many calls actually
;; FIXME: For non-interactive uses, many calls actually ;; just want (insert "\n"), so maybe we should do just
;; just want (insert "\n"), so maybe we should do just ;; that, so as to avoid the risk of filling or running
;; that, so as to avoid the risk of filling or running ;; abbrevs unexpectedly.
;; abbrevs unexpectedly. (let ((post-self-insert-hook (list postproc)))
(let ((post-self-insert-hook (list postproc))) (self-insert-command arg))
(self-insert-command arg)) (unwind-protect
(unwind-protect (progn
(progn (add-hook 'post-self-insert-hook postproc nil t)
(add-hook 'post-self-insert-hook postproc nil t) (self-insert-command arg))
(self-insert-command arg)) ;; We first used let-binding to protect the hook, but that
;; We first used let-binding to protect the hook, but that ;; was naive since add-hook affects the symbol-default
;; was naive since add-hook affects the symbol-default ;; value of the variable, whereas the let-binding might
;; value of the variable, whereas the let-binding might ;; only protect the buffer-local value.
;; only protect the buffer-local value. (remove-hook 'post-self-insert-hook postproc t))))
(remove-hook 'post-self-insert-hook postproc t)))
(cl-assert (not (member postproc post-self-insert-hook)))
(cl-assert (not (member postproc (default-value 'post-self-insert-hook))))))
nil) nil)
(defun set-hard-newline-properties (from to) (defun set-hard-newline-properties (from to)