branch: externals/mpdired commit 558206b2a13031c20e85c0b949d5b10cc15edaf5 Author: Manuel Giraud <man...@ledu-giraud.fr> Commit: Manuel Giraud <man...@ledu-giraud.fr>
create main buffer in one place only Also, do not reset its mode if the buffer already exists. --- mpdired.el | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/mpdired.el b/mpdired.el index ef27f9a939..584930fbcb 100644 --- a/mpdired.el +++ b/mpdired.el @@ -440,7 +440,7 @@ used for mark followed by a space." (with-current-buffer (process-buffer proc) (setq ascending-p mpdired--ascending-p playlist mpdired--playlist)) - (with-current-buffer (get-buffer-create main-buffer) + (with-current-buffer main-buffer (let* ((inhibit-read-only t) ;; `content' is always of the form ("" rest...) so if ;; there is only one element in rest use it as content. @@ -491,7 +491,7 @@ used for mark followed by a space." (elapsed (cadr data)) (duration (caddr data)) (songs (cdddr data))) - (with-current-buffer (get-buffer-create main-buffer) + (with-current-buffer main-buffer (let ((inhibit-read-only t)) (erase-buffer) ;; Insert content @@ -593,10 +593,11 @@ used for mark followed by a space." (setq mpdired--network-params params mpdired--main-buffer (mpdired--main-name host service localp)) (set-process-buffer (apply 'make-network-process params) - (current-buffer)) - ;; Set mode in main buffer. - (with-current-buffer (get-buffer-create mpdired--main-buffer) - (mpdired-mode))))))) + (current-buffer)))) + ;; Set mode in main buffer if it does not already exist. + (unless (get-buffer mpdired--main-buffer) + (with-current-buffer (get-buffer-create mpdired--main-buffer) + (mpdired-mode)))))) (defmacro mpdired--with-comm-buffer (process buffer &rest body) "Helper macro when sending a command via the communication buffer.