]> jfr.im git - irc/unrealircd/unrealircd.git/commitdiff
bleh
authorluke <redacted>
Sat, 7 Sep 2002 23:55:23 +0000 (23:55 +0000)
committerluke <redacted>
Sat, 7 Sep 2002 23:55:23 +0000 (23:55 +0000)
Changes
src/channel.c
src/s_user.c

diff --git a/Changes b/Changes
index ac45eb99fbde5491a41b9b1d5a65ecd03f350c79..c87e450bc4263af2abbdf85cd4f7b1b2a37c10a6 100644 (file)
--- a/Changes
+++ b/Changes
@@ -683,3 +683,7 @@ field in topics
 Fixed broken /who
 --Luke
 ===================================
+
+Fixed bug with /whois and +I
+--Luke
+===================================
index 660036684dc6f1aecc600d8fff19ef9f60c7fa8c..e1799b807c4f4324969f39741421eec8b56f50c6 100644 (file)
@@ -4853,6 +4853,22 @@ int m_sjoin(aClient *cptr, aClient *sptr, int parc, char *parv[])
                 {
                         Addit('b', ban->banstr);
                 }
+               /* blah code */
+               if (b > 1)
+               {
+                        modebuf[b] = '\0';
+                        sendto_serv_butone_sjoin(cptr,
+                            ":%s MODE %s %s %s %lu",
+                            sptr->name, chptr->chname,
+                            modebuf, parabuf, chptr->creationtime);
+                        sendto_channel_butserv(chptr,
+                            sptr, ":%s MODE %s %s %s",
+                            sptr->name, chptr->chname, modebuf, parabuf);
+                }
+               modebuf[0] = '-';
+               modebuf[1] = '\0';
+               parabuf[0] = '\0';
+               b = 1;
                 for (ban = chptr->exlist; ban; ban = ban->next)
                 {
                         Addit('e', ban->banstr);
index 1c00d3c49cdf92ba4862858fa5a9c43592c49a7e..599097d7d55d1fe7e73508a6c141d227157e3bd8 100644 (file)
@@ -2894,7 +2894,13 @@ int  m_whois(cptr, sptr, parc, parv)
                        mlen = strlen(me.name) + strlen(parv[0]) + 6 +
                            strlen(name);
 
-                       if (!IsServices(acptr) || (IsServices(acptr) && IsNetAdmin(sptr)))
+#ifdef ENABLE_INVISOPER
+                       if (!IsServices(acptr) && !IsHiding(acptr) ||
+                           ((IsServices(acptr) || IsHiding(acptr)) && IsNetAdmin(sptr))
+                          )
+#else
+                       if (!IsServices(acptr) || IsServices(acptr) && IsNetAdmin(sptr))
+#endif
                        {
                                for (len = 0, *buf = '\0', lp = user->channel; lp;
                                    lp = lp->next)