From: Kiso Katsuyuki Date: Wed, 9 Sep 2020 19:16:34 +0000 (+0300) Subject: Suppress errors of tab-line-switch functions X-Git-Tag: archive/raspbian/1%29.2+1-2+rpi1^2~5^2~16^2~5383 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=c3f986a4557b8785e16daf84f94c029b89c9feff;p=emacs.git Suppress errors of tab-line-switch functions Traget errors occurs when tab-line-switch-to-prev-tab or tab-line-switch-to-next-tab is invoked in a buffer which is not in tabs Copyright-paperwork-exempt: yes --- diff --git a/lisp/tab-line.el b/lisp/tab-line.el index 40f80959ccf..140ee8c389e 100644 --- a/lisp/tab-line.el +++ b/lisp/tab-line.el @@ -652,13 +652,13 @@ Its effect is the same as using the `previous-buffer' command (switch-to-prev-buffer window) (with-selected-window (or window (selected-window)) (let* ((tabs (funcall tab-line-tabs-function)) - (tab (nth (1- (seq-position - tabs (current-buffer) - (lambda (tab buffer) - (if (bufferp tab) - (eq buffer tab) - (eq buffer (cdr (assq 'buffer tab))))))) - tabs)) + (pos (seq-position + tabs (current-buffer) + (lambda (tab buffer) + (if (bufferp tab) + (eq buffer tab) + (eq buffer (cdr (assq 'buffer tab))))))) + (tab (if pos (nth (1- pos) tabs))) (buffer (if (bufferp tab) tab (cdr (assq 'buffer tab))))) (when (bufferp buffer) (switch-to-buffer buffer))))))) @@ -673,13 +673,13 @@ Its effect is the same as using the `next-buffer' command (switch-to-next-buffer window) (with-selected-window (or window (selected-window)) (let* ((tabs (funcall tab-line-tabs-function)) - (tab (nth (1+ (seq-position - tabs (current-buffer) - (lambda (tab buffer) - (if (bufferp tab) - (eq buffer tab) - (eq buffer (cdr (assq 'buffer tab))))))) - tabs)) + (pos (seq-position + tabs (current-buffer) + (lambda (tab buffer) + (if (bufferp tab) + (eq buffer tab) + (eq buffer (cdr (assq 'buffer tab))))))) + (tab (if pos (nth (1+ pos) tabs))) (buffer (if (bufferp tab) tab (cdr (assq 'buffer tab))))) (when (bufferp buffer) (switch-to-buffer buffer)))))))