# HG changeset patch # User Mikael Berthe # Date 1157994899 -7200 # Node ID 90ff94f0fbbb1e98ac7ed6cfebe1efe46b5cf462 # Parent 8bf36cef8aa64108017e6354691054fc778e93dd Auto-whois shouldn't enable chat mode diff -r 8bf36cef8aa6 -r 90ff94f0fbbb mcabber/src/commands.c --- a/mcabber/src/commands.c Sat Sep 09 13:10:27 2006 +0200 +++ b/mcabber/src/commands.c Mon Sep 11 19:14:59 2006 +0200 @@ -1871,7 +1871,9 @@ jb_room_unlock(buddy_getjid(bud)); } -void room_whois(gpointer bud, char *arg) +// room_whois(..) +// If interactive is TRUE, chatmode can be enabled. +void room_whois(gpointer bud, char *arg, guint interactive) { char **paramlst; gchar *nick, *buffer; @@ -1897,9 +1899,11 @@ nick = to_utf8(nick); - // Enter chat mode - scr_set_chatmode(TRUE); - scr_ShowBuddyWindow(); + if (interactive) { + // Enter chat mode + scr_set_chatmode(TRUE); + scr_ShowBuddyWindow(); + } jid = buddy_getjid(bud); rstatus = buddy_getstatus(bud, nick); @@ -2030,7 +2034,7 @@ room_topic(bud, arg); } else if (!strcasecmp(subcmd, "whois")) { if ((arg = check_room_subcommand(arg, TRUE, bud)) != NULL) - room_whois(bud, arg); + room_whois(bud, arg, TRUE); } else { scr_LogPrint(LPRINT_NORMAL, "Unrecognized parameter!"); } diff -r 8bf36cef8aa6 -r 90ff94f0fbbb mcabber/src/commands.h --- a/mcabber/src/commands.h Sat Sep 09 13:10:27 2006 +0200 +++ b/mcabber/src/commands.h Mon Sep 11 19:14:59 2006 +0200 @@ -20,7 +20,7 @@ extern char *mcabber_version(void); extern void mcabber_connect(void); -void room_whois(gpointer bud, char *nick_locale); +void room_whois(gpointer bud, char *nick_locale, guint interactive); #endif /* __COMMANDS_H__ */ diff -r 8bf36cef8aa6 -r 90ff94f0fbbb mcabber/src/jabglue.c --- a/mcabber/src/jabglue.c Sat Sep 09 13:10:27 2006 +0200 +++ b/mcabber/src/jabglue.c Mon Sep 11 19:14:59 2006 +0200 @@ -1281,7 +1281,7 @@ if (new_member && settings_opt_get_int("muc_auto_whois")) { // FIXME: This will fail for some UTF-8 nicknames. gchar *joiner_nick = from_utf8(rname); - room_whois(room_elt->data, joiner_nick); + room_whois(room_elt->data, joiner_nick, FALSE); g_free(joiner_nick); } } else