;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Code:
(require 'riece-misc)
-(require 'riece-filter) ;riece-default-handle-message
(require 'riece-version)
+(require 'riece-commands) ;riece-command-join
(eval-when-compile
- (autoload 'riece-default-handle-numeric-reply "riece-filter"))
+ (autoload 'riece-default-handle-numeric-reply "riece-handle"))
(defun riece-handle-default-000-message (prefix number name string)
(setq riece-nick-accepted 'ok)
(riece-default-handle-numeric-reply
(setq riece-real-server-name prefix
riece-real-nickname name
riece-real-userhost nil)
+ ;; Before sending USERHOST, register myself with riece-obarray
+ ;; because it may take some time.
+ (riece-get-user name)
(riece-send-string (format "USERHOST %s\r\n" riece-real-nickname))
(riece-insert-info
(list riece-dialogue-buffer riece-others-buffer)
(if (equal riece-server-name "")
(message "Logging in to IRC server...done")
(message "Logging in to %s...done" riece-server-name))
+ (let ((channel-list riece-startup-channel-list)
+ entry identity)
+ (while channel-list
+ (unless (listp (setq entry (car channel-list)))
+ (setq entry (list (car channel-list))))
+ (if (equal (riece-identity-server
+ (setq identity (riece-parse-identity (car entry))))
+ riece-server-name)
+ (riece-command-join-channel identity (nth 1 entry)))
+ (setq channel-list (cdr channel-list))))
(run-hooks 'riece-after-login-hook))
(defun riece-handle-004-message (prefix number name string)