Просмотр исходного кода

* Fix +botbitch being very slow and inefficient

Bryan Drewery 16 лет назад
Родитель
Сommit
6e97d9890f
2 измененных файлов с 4 добавлено и 8 удалено
  1. 2 0
      doc/UPDATES
  2. 2 8
      src/mod/irc.mod/chan.c

+ 2 - 0
doc/UPDATES

@@ -1,3 +1,5 @@
+* Fix +botbitch being very slow and inefficient
+
 1.3 - http://wraith.botpack.net/milestone/1.3
 * Binary / shell / startup changes
   * Binary error messages are no longer obscure numbers or fake segfaults. (Compile with OBSCURE_ERRORS to re-enable)

+ 2 - 8
src/mod/irc.mod/chan.c

@@ -357,11 +357,8 @@ void priority_do(struct chanset_t * chan, bool opsonly, int action)
         if (m->user)
           get_user_flagrec(m->user, &fr, chan->dname, chan);
 
-        if (((glob_deop(fr) && !chan_op(fr)) || chan_deop(fr)) || /* +d */
-           ((!channel_privchan(chan) && !chan_op(fr) && !glob_op(fr)) || /* simply no +o flag. */
-           (channel_privchan(chan) && !glob_bot(fr) && !glob_owner(fr) && !chan_op(fr)))) { /* private? */
+        if (!chk_op(fr, chan))
           ++targets;
-        }
     }
   }
 
@@ -396,10 +393,7 @@ void priority_do(struct chanset_t * chan, bool opsonly, int action)
         if (m->user)
           get_user_flagrec(m->user, &fr, chan->dname, chan);
 
-        if (((glob_deop(fr) && !chan_op(fr)) || chan_deop(fr)) ||
-            ((!channel_privchan(chan) && !chan_op(fr) && !glob_op(fr)) ||
-             (channel_privchan(chan) && !glob_bot(fr) && !glob_owner(fr) && !chan_op(fr)))) {
-
+        if (!chk_op(fr, chan)) {
           if (tpos >= ft) {
             if ((action == PRIO_DEOP) && !chan_sentdeop(m)) {
               ++actions;