]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/cmd_ison.cpp
Add a metric assload of TRANSLATE macros to modules.
[user/henk/code/inspircd.git] / src / cmd_ison.cpp
index fde8666ff156a96b710115bd5805ab1fd3ba3f32..4ca319afcd21a8a187518c867bbc382501fe58b2 100644 (file)
  * ---------------------------------------------------
  */
 
-#include "users.h"
 #include "inspircd.h"
 #include "commands/cmd_ison.h"
 
-extern "C" command_t* init_command(InspIRCd* Instance)
+extern "C" DllExport command_t* init_command(InspIRCd* Instance)
 {
        return new cmd_ison(Instance);
 }
@@ -36,6 +35,9 @@ CmdResult cmd_ison::Handle (const char** parameters, int pcnt, userrec *user)
 
                if (u)
                {
+                       if (u->Visibility && !u->Visibility->VisibleTo(user))
+                               continue;
+
                        reply.append(u->nick).append(" ");
                        if (reply.length() > 450)
                        {
@@ -51,8 +53,9 @@ CmdResult cmd_ison::Handle (const char** parameters, int pcnt, userrec *user)
                                /* Its a space seperated list of nicks (RFC1459 says to support this)
                                 */
                                irc::spacesepstream list(parameters[i]);
-                               std::string item = "*";
-                               while (((item = list.GetToken()) != ""))
+                               std::string item;
+
+                               while (list.GetToken(item))
                                {
                                        u = ServerInstance->FindNick(item);
                                        if (ison_already.find(u) != ison_already.end())
@@ -73,8 +76,6 @@ CmdResult cmd_ison::Handle (const char** parameters, int pcnt, userrec *user)
                                        }
                                }
                        }
-                       /* There will only be one of these, we can bail after. */
-                       break;
                }
        }