aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/erc
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/erc')
-rw-r--r--lisp/erc/ChangeLog9
-rw-r--r--lisp/erc/erc-backend.el10
-rw-r--r--lisp/erc/erc.el4
3 files changed, 20 insertions, 3 deletions
diff --git a/lisp/erc/ChangeLog b/lisp/erc/ChangeLog
index 0ba18b68cfb..8daf590ee89 100644
--- a/lisp/erc/ChangeLog
+++ b/lisp/erc/ChangeLog
@@ -1,3 +1,12 @@
12010-01-25 Vivek Dasmohapatra <vivek@etla.org>
2
3 * erc-backend.el (erc-session-connector): New var.
4 (erc-server-reconnect): Use it to reconnect via old
5 connector (Bug#4958).
6
7 * erc.el (erc-determine-parameters): Save
8 erc-server-connect-function to erc-session-connector.
9
12009-11-03 Stefan Monnier <monnier@iro.umontreal.ca> 102009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
2 11
3 * erc.el (erc-display-line-1, erc-process-away): 12 * erc.el (erc-display-line-1, erc-process-away):
diff --git a/lisp/erc/erc-backend.el b/lisp/erc/erc-backend.el
index 1ab9467ab3a..8b533b4c255 100644
--- a/lisp/erc/erc-backend.el
+++ b/lisp/erc/erc-backend.el
@@ -130,6 +130,10 @@ Use `erc-current-nick' to access this.")
130 "The server name used to connect to for this session.") 130 "The server name used to connect to for this session.")
131(make-variable-buffer-local 'erc-session-server) 131(make-variable-buffer-local 'erc-session-server)
132 132
133(defvar erc-session-connector nil
134 "The function used to connect to this session (nil for the default).")
135(make-variable-buffer-local 'erc-session-connector)
136
133(defvar erc-session-port nil 137(defvar erc-session-port nil
134 "The port used to connect to.") 138 "The port used to connect to.")
135(make-variable-buffer-local 'erc-session-port) 139(make-variable-buffer-local 'erc-session-port)
@@ -538,8 +542,10 @@ Make sure you are in an ERC buffer when running this."
538 (erc-set-active-buffer (current-buffer)) 542 (erc-set-active-buffer (current-buffer))
539 (setq erc-server-last-sent-time 0) 543 (setq erc-server-last-sent-time 0)
540 (setq erc-server-lines-sent 0) 544 (setq erc-server-lines-sent 0)
541 (erc-open erc-session-server erc-session-port erc-server-current-nick 545 (let ((erc-server-connect-function (or erc-session-connector
542 erc-session-user-full-name t erc-session-password)))) 546 'open-network-stream)))
547 (erc-open erc-session-server erc-session-port erc-server-current-nick
548 erc-session-user-full-name t erc-session-password)))))
543 549
544(defun erc-server-filter-function (process string) 550(defun erc-server-filter-function (process string)
545 "The process filter for the ERC server." 551 "The process filter for the ERC server."
diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el
index d2445414c83..b76f486f155 100644
--- a/lisp/erc/erc.el
+++ b/lisp/erc/erc.el
@@ -5654,11 +5654,13 @@ user input."
5654 "Determine the connection and authentication parameters. 5654 "Determine the connection and authentication parameters.
5655Sets the buffer local variables: 5655Sets the buffer local variables:
5656 5656
5657- `erc-session-connector'
5657- `erc-session-server' 5658- `erc-session-server'
5658- `erc-session-port' 5659- `erc-session-port'
5659- `erc-session-full-name' 5660- `erc-session-full-name'
5660- `erc-server-current-nick'" 5661- `erc-server-current-nick'"
5661 (setq erc-session-server (erc-compute-server server) 5662 (setq erc-session-connector erc-server-connect-function
5663 erc-session-server (erc-compute-server server)
5662 erc-session-port (or port erc-default-port) 5664 erc-session-port (or port erc-default-port)
5663 erc-session-user-full-name (erc-compute-full-name name)) 5665 erc-session-user-full-name (erc-compute-full-name name))
5664 (erc-set-current-nick (erc-compute-nick nick))) 5666 (erc-set-current-nick (erc-compute-nick nick)))