diff options
| author | Naram Qashat cyberbotx@cyberbotx.com <Naram Qashat cyberbotx@cyberbotx.com@5417fbe8-f217-4b02-8779-1006273d7864> | 2008-10-02 18:50:20 +0000 |
|---|---|---|
| committer | Naram Qashat cyberbotx@cyberbotx.com <Naram Qashat cyberbotx@cyberbotx.com@5417fbe8-f217-4b02-8779-1006273d7864> | 2008-10-02 18:50:20 +0000 |
| commit | a22c4bf1daa18e11141a94ecd20dfd8af4944adb (patch) | |
| tree | 1c26b4c7f7a6c32a62a711790d9da6dd58d5bc32 /include | |
| parent | c48429eb7515583de22bc8134493b3bfad2df0c4 (diff) | |
Replaced anope_cmd_message() with direct call to SendMessage() in IRCDProto class.
Also added SendMessageInternal() function to IRCDProto class, now SendMessage() is a stub to handle varargs.
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@1333 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'include')
| -rw-r--r-- | include/extern.h | 1 | ||||
| -rw-r--r-- | include/services.h | 22 |
2 files changed, 17 insertions, 6 deletions
diff --git a/include/extern.h b/include/extern.h index a6416bf80..200baa430 100644 --- a/include/extern.h +++ b/include/extern.h @@ -1129,7 +1129,6 @@ E void anope_SendBanDel(const char *name, const char *nick); / E void anope_SendBotOp(const char *nick, const char *chan); /* MODE BotServ */ E void anope_cmd_netinfo(int ac, const char **av); /* NETINFO */ E void anope_SendChangeBotNick(const char *oldnick, const char *newnick); /* NICK */ -E void anope_cmd_message(const char *source, const char *dest, const char *fmt, ...); /* NOTICE */ E void anope_cmd_notice(const char *source, const char *dest, const char *msg); /* NOTICE */ E void anope_SendGlobalNotice(const char *source, const char *dest, const char *msg); /* NOTICE */ E void anope_SendPart(const char *nick, const char *chan, const char *fmt, ...); /* PART */ diff --git a/include/services.h b/include/services.h index 58c0570f8..9cb3273ba 100644 --- a/include/services.h +++ b/include/services.h @@ -1234,6 +1234,13 @@ class IRCDProto { virtual void SendModeInternal(const char *, const char *, const char *) = 0; virtual void SendKickInternal(const char *, const char *, const char *, const char *) = 0; virtual void SendNoticeChanopsInternal(const char *, const char *, const char *) = 0; + virtual void SendMessageInternal(BotInfo *bi, const char *dest, const char *buf) + { + if (NSDefFlags & NI_MSG) + SendPrivmsg(bi, dest, buf); + else + SendNotice(bi, dest, buf); + } public: virtual void SendSVSNOOP(const char *, int) { } virtual void SendAkillDel(const char *, const char *) = 0; @@ -1287,12 +1294,17 @@ class IRCDProto { } SendNoticeChanopsInternal(source, dest, buf); } - virtual void SendMessage(BotInfo *bi, const char *dest, const char *buf) + virtual void SendMessage(const char *source, const char *dest, const char *fmt, ...) { - if (NSDefFlags & NI_MSG) - SendPrivmsg(bi, dest, buf); - else - SendNotice(bi, dest, buf); + va_list args; + char buf[BUFSIZE] = ""; + if (fmt) { + va_start(args, fmt); + vsnprintf(buf, BUFSIZE - 1, fmt, args); + va_end(args); + } + BotInfo *bi = findbot(source); + SendMessageInternal(bi, dest, buf); } virtual void SendNotice(BotInfo *bi, const char *dest, const char *msg) { |
