erc-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Erc-commit] [commit][emacs22] erc-iswitchb: Fix bug with C-g


From: mwolson
Subject: [Erc-commit] [commit][emacs22] erc-iswitchb: Fix bug with C-g
Date: Sun, 14 Oct 2007 00:48:37 -0400

commit b372b547bf0ea6122f764dec7476dd50e6676168
Author: Michael Olson <address@hidden>
Date:   Thu Dec 28 01:30:50 2006 +0000

    erc-iswitchb: Fix bug with C-g
    
    2006-12-28  Leo  <address@hidden>
    
        * erc.el (erc-iswitchb): Wrap body in unwind-protect so that
        hitting C-g does not leave iswitchb-mode on.
    git-archimport-id: address@hidden/erc--main--0--patch-75

diff --git a/ChangeLog b/ChangeLog
index 9360127..403c6c3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2006-12-28  Leo  <address@hidden>
+
+       * erc.el (erc-iswitchb): Wrap body in unwind-protect so that
+       hitting C-g does not leave iswitchb-mode on.
+
 2006-12-27  Michael Olson  <address@hidden>
 
        * erc.el (erc-cmd-RECONNECT): New command that calls
diff --git a/erc.el b/erc.el
index 5aea199..cd665e8 100644
--- a/erc.el
+++ b/erc.el
@@ -1689,21 +1689,22 @@ needs to be active for this function to work."
     (require 'iswitchb))
   (let ((enabled iswitchb-mode))
     (or enabled (iswitchb-mode 1))
-    (let ((iswitchb-make-buflist-hook
-          (lambda ()
-            (setq iswitchb-temp-buflist
-                  (mapcar 'buffer-name
-                          (erc-buffer-list
-                           nil
-                           (when arg erc-server-process)))))))
-      (switch-to-buffer
-       (iswitchb-read-buffer
-       "Switch-to: "
-       (if (boundp 'erc-modified-channels-alist)
-           (buffer-name (caar (last erc-modified-channels-alist)))
-         nil)
-       t)))
-    (or enabled (iswitchb-mode -1))))
+    (unwind-protect
+       (let ((iswitchb-make-buflist-hook
+              (lambda ()
+                (setq iswitchb-temp-buflist
+                      (mapcar 'buffer-name
+                              (erc-buffer-list
+                               nil
+                               (when arg erc-server-process)))))))
+         (switch-to-buffer
+          (iswitchb-read-buffer
+           "Switch-to: "
+           (if (boundp 'erc-modified-channels-alist)
+               (buffer-name (caar (last erc-modified-channels-alist)))
+             nil)
+           t)))
+      (or enabled (iswitchb-mode -1)))))
 
 (defun erc-channel-list (proc)
   "Return a list of channel buffers.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]