Make `newline' check the argument earlier

* lisp/simple.el (newline): Signal an error earlier to avoid
peculiar behaviour after getting a backtrace (bug#50900).
This commit is contained in:
Lars Ingebrigtsen 2021-09-30 09:03:18 +02:00
parent c42af5aee7
commit d1aacceae9

View file

@ -589,6 +589,8 @@ text-property `hard'.
A non-nil INTERACTIVE argument means to run the `post-self-insert-hook'."
(interactive "*P\np")
(barf-if-buffer-read-only)
(when (< arg 0)
(error "Repetition argument has to be non-negative"))
;; Call self-insert so that auto-fill, abbrev expansion etc. happen.
;; Set last-command-event to tell self-insert what to insert.
(let* ((was-page-start (and (bolp) (looking-at page-delimiter)))