* riece-addon.el (riece-addon-list-unsupported-face): Abolished.
[riece] / lisp / riece-display.el
index 5a16cdf..a3d59e2 100644 (file)
@@ -404,7 +404,8 @@ Local to the buffer in `riece-buffer-list'.")
     (if channels
        (setq identity (car channels))
       (if riece-debug
-         (message "%S is not a member of riece-current-channels" identity)))
+         (riece-debug (format "%S is not a member of riece-current-channels"
+                              identity))))
     (format riece-channel-buffer-format (riece-format-identity identity))))
 
 (eval-when-compile
@@ -428,7 +429,14 @@ Local to the buffer in `riece-buffer-list'.")
     (current-buffer)))
 
 (defun riece-channel-buffer (identity)
-  (cdr (riece-identity-assoc identity riece-channel-buffer-alist)))
+  (let ((entry (riece-identity-assoc identity riece-channel-buffer-alist)))
+    (if entry
+       (if (buffer-live-p (cdr entry))
+           (cdr entry)
+         (if riece-debug
+             (riece-debug
+              (format "riece-channel-buffer: nonexistent buffer: %s"
+                      (riece-format-identity identity))))))))
 
 (defun riece-switch-to-channel (identity)
   (let ((last riece-current-channel)