summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-02-21 19:03:13 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2006-02-21 19:03:13 +0000
commit163c429ec569cd1a506debb37fbd211332e930ff (patch)
tree417254fe47ffa4f1fc10b7707f13bee7f7460414
parentf0ebde21e57d340c3dca5a3ad0646d4b469bafaa (diff)
Added second form of find() taking const char*, which is faster in the core where char* is used more often
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3273 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r--include/helperfuncs.h1
-rw-r--r--src/helperfuncs.cpp12
2 files changed, 13 insertions, 0 deletions
diff --git a/include/helperfuncs.h b/include/helperfuncs.h
index 73e791c9d..15a11e531 100644
--- a/include/helperfuncs.h
+++ b/include/helperfuncs.h
@@ -61,6 +61,7 @@ void ServerPrivmsgAll(char* text, ...);
void WriteWallOps(userrec *source, bool local_only, char* text, ...);
void strlower(char *n);
userrec* Find(std::string &nick);
+userrec* Find(const char* nick);
chanrec* FindChan(const char* chan);
long GetMaxBans(char* name);
void purge_empty_chans(userrec* u);
diff --git a/src/helperfuncs.cpp b/src/helperfuncs.cpp
index 4f9814cda..6e90c023c 100644
--- a/src/helperfuncs.cpp
+++ b/src/helperfuncs.cpp
@@ -1024,6 +1024,18 @@ userrec* Find(std::string &nick)
return iter->second;
}
+userrec* Find(const char* nick)
+{
+ if (!nick)
+ return NULL;
+ user_hash::iterator iter = clientlist.find(nick);
+
+ if (iter == clientlist.end())
+ return NULL;
+
+ return iter->second;
+}
+
/* find a channel record by channel name and return a pointer to it */
chanrec* FindChan(const char* chan)