comparison lisp/erc/erc-backend.el @ 83532:b19aaf4ab0ee

Merged from emacs@sv.gnu.org. Patches applied: * emacs@sv.gnu.org/emacs--devo--0--patch-331 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-332 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-333 Merge from gnus--rel--5.10 * emacs@sv.gnu.org/emacs--devo--0--patch-334 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-335 Add note about "link" button-class to etc/TODO * emacs@sv.gnu.org/emacs--devo--0--patch-336 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-337 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-338 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-339 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-340 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-341 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-342 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-343 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-344 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-345 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-346 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-347 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-348 Update for ERC 5.1.3. * emacs@sv.gnu.org/emacs--devo--0--patch-349 Update from CVS * emacs@sv.gnu.org/emacs--devo--0--patch-350 Merge from gnus--rel--5.10 * emacs@sv.gnu.org/gnus--rel--5.10--patch-111 Update from CVS: texi/gnus.texi (Summary Buffer Lines): Fix typo. * emacs@sv.gnu.org/gnus--rel--5.10--patch-112 Update from CVS * emacs@sv.gnu.org/gnus--rel--5.10--patch-113 Merge from emacs--devo--0 * emacs@sv.gnu.org/gnus--rel--5.10--patch-114 Update from CVS git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-572
author Karoly Lorentey <lorentey@elte.hu>
date Fri, 14 Jul 2006 05:56:32 +0000
parents 3d0d6e217db9
children 268989954f79
comparison
equal deleted inserted replaced
83531:a387c138b28e 83532:b19aaf4ab0ee
561 561
562 (defun erc-coding-system-for-target (target) 562 (defun erc-coding-system-for-target (target)
563 "Return the coding system or cons cell appropriate for TARGET. 563 "Return the coding system or cons cell appropriate for TARGET.
564 This is determined via `erc-encoding-coding-alist' or 564 This is determined via `erc-encoding-coding-alist' or
565 `erc-server-coding-system'." 565 `erc-server-coding-system'."
566 (or (cdr (assoc target erc-encoding-coding-alist)) 566 (or (let ((case-fold-search t))
567 (catch 'match
568 (dolist (pat erc-encoding-coding-alist)
569 (when (string-match (car pat) target)
570 (throw 'match (cdr pat))))))
567 (and (functionp erc-server-coding-system) 571 (and (functionp erc-server-coding-system)
568 (funcall erc-server-coding-system)) 572 (funcall erc-server-coding-system))
569 erc-server-coding-system)) 573 erc-server-coding-system))
570 574
571 (defun erc-decode-string-from-target (str target) 575 (defun erc-decode-string-from-target (str target)
847 851
848 Finds hooks by looking in the `erc-server-responses' hashtable." 852 Finds hooks by looking in the `erc-server-responses' hashtable."
849 (let ((hook (or (erc-get-hook (erc-response.command message)) 853 (let ((hook (or (erc-get-hook (erc-response.command message))
850 'erc-default-server-functions))) 854 'erc-default-server-functions)))
851 (run-hook-with-args-until-success hook process message) 855 (run-hook-with-args-until-success hook process message)
852 (with-current-buffer (erc-server-buffer) 856 (let ((server-buffer (erc-server-buffer)))
853 (run-hook-with-args 'erc-timer-hook (erc-current-time))))) 857 (when (buffer-live-p server-buffer)
858 (with-current-buffer server-buffer
859 (run-hook-with-args 'erc-timer-hook (erc-current-time)))))))
854 860
855 (add-hook 'erc-default-server-functions 'erc-handle-unknown-server-response) 861 (add-hook 'erc-default-server-functions 'erc-handle-unknown-server-response)
856 862
857 (defun erc-handle-unknown-server-response (proc parsed) 863 (defun erc-handle-unknown-server-response (proc parsed)
858 "Display unknown server response's message." 864 "Display unknown server response's message."