Преглед на файлове

Added +private checking for autovoice (not +voice)

svn: 71
Bryan Drewery преди 23 години
родител
ревизия
9d4a261bbf
променени са 1 файла, в които са добавени 6 реда и са изтрити 3 реда
  1. 6 3
      src/mod/irc.mod/irc.c

+ 6 - 3
src/mod/irc.mod/irc.c

@@ -1224,11 +1224,14 @@ static void check_expired_chanstuff()
             struct flag_record fr2 = { FR_GLOBAL | FR_CHAN, 0, 0 };
 
             get_user_flagrec(m->user, &fr2, chan->dname);
-            if ((!glob_bot(fr2) && ((chan_voice(fr2) || (glob_voice(fr2) && !chan_quiet(fr2))) ||
+            if ((!channel_private(chan) || (channel_private(chan) && (glob_owner(fr2) || chan_voice(fr2)))) &&
+               ((!glob_bot(fr2) && ((chan_voice(fr2) || (glob_voice(fr2) && !chan_quiet(fr2))) ||
                (channel_voice(chan) && (!chan_quiet(fr2) && !glob_quiet(fr2)))) &&
-               !chan_hasop(m) && !chan_hasvoice(m) && !(m->flags & EVOICE))) {
+               !chan_hasop(m) && !chan_hasvoice(m) && !(m->flags & EVOICE)))) {
               add_mode(chan, '+', 'v', m->nick);
-            } else if (!glob_bot(fr2) && ((chan_quiet(fr2) || (glob_quiet(fr2) && !chan_voice(fr2))) || (m->flags & EVOICE))) {
+            } else if (!glob_bot(fr2) && 
+              ((chan_quiet(fr2) || (glob_quiet(fr2) && !chan_voice(fr2))) || 
+              (m->flags & EVOICE))) {
               if (!chan_hasop(m) && chan_hasvoice(m))
                 add_mode(chan, '-', 'v', m->nick);
             }