aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilip Kaludercic2021-06-10 11:40:19 +0200
committerPhilip Kaludercic2021-06-10 17:22:58 +0200
commitb67b1eea256e05cc65039f207d0f16a16e2dac4e (patch)
treefe8d521ba35cb1f517bd5d9e80d39df74847d971
parent95fdd4b99bccc11f373c3b9d6cacee8269728344 (diff)
downloademacs-b67b1eea256e05cc65039f207d0f16a16e2dac4e.tar.gz
emacs-b67b1eea256e05cc65039f207d0f16a16e2dac4e.zip
Fix prompt doubling when reconnecting
* rcirc.el (rcirc-connect): Check if rcirc-mode is already active (rcirc-get-buffer-create): Check if rcirc-mode is already active
-rw-r--r--lisp/net/rcirc.el10
1 files changed, 7 insertions, 3 deletions
diff --git a/lisp/net/rcirc.el b/lisp/net/rcirc.el
index ad5a4d64178..edd5b87e7d1 100644
--- a/lisp/net/rcirc.el
+++ b/lisp/net/rcirc.el
@@ -621,7 +621,8 @@ that are joined after authentication."
621 (set-process-coding-system process 'raw-text 'raw-text) 621 (set-process-coding-system process 'raw-text 'raw-text)
622 (switch-to-buffer (rcirc-generate-new-buffer-name process nil)) 622 (switch-to-buffer (rcirc-generate-new-buffer-name process nil))
623 (set-process-buffer process (current-buffer)) 623 (set-process-buffer process (current-buffer))
624 (rcirc-mode process nil) 624 (unless (eq major-mode 'rcirc-mode)
625 (rcirc-mode process nil))
625 (set-process-sentinel process 'rcirc-sentinel) 626 (set-process-sentinel process 'rcirc-sentinel)
626 (set-process-filter process 'rcirc-filter) 627 (set-process-filter process 'rcirc-filter)
627 628
@@ -662,6 +663,7 @@ that are joined after authentication."
662 (run-at-time 0 (/ rcirc-timeout-seconds 2) 'rcirc-keepalive))) 663 (run-at-time 0 (/ rcirc-timeout-seconds 2) 'rcirc-keepalive)))
663 664
664 (message "Connecting to %s...done" (or server-alias server)) 665 (message "Connecting to %s...done" (or server-alias server))
666 (setq mode-line-process nil)
665 667
666 ;; return process object 668 ;; return process object
667 process))) 669 process)))
@@ -1412,9 +1414,11 @@ Create the buffer if it doesn't exist."
1412 (let ((new-buffer (get-buffer-create 1414 (let ((new-buffer (get-buffer-create
1413 (rcirc-generate-new-buffer-name process target)))) 1415 (rcirc-generate-new-buffer-name process target))))
1414 (with-current-buffer new-buffer 1416 (with-current-buffer new-buffer
1415 (rcirc-mode process target) 1417 (unless (eq major-mode 'rcirc-mode)
1418 (rcirc-mode process target)))
1419 (setq mode-line-process nil)
1416 (rcirc-put-nick-channel process (rcirc-nick process) target 1420 (rcirc-put-nick-channel process (rcirc-nick process) target
1417 rcirc-current-line)) 1421 rcirc-current-line)
1418 new-buffer))))) 1422 new-buffer)))))
1419 1423
1420(defun rcirc-send-input () 1424(defun rcirc-send-input ()