I18N fixes and (hopefully) protocol fixes
[srvx.git] / src / hash.c
index f5a21cddb661ef16a982bf0fe4e2c955432bd28e..98705bac8fbf8fc5abe789687df0786ac3cafa06 100644 (file)
@@ -308,7 +308,6 @@ wipeout_channel(struct chanNode *cNode, time_t new_time, char **modes, unsigned
             argc++;
     }
     if (argc) {
-        extern struct userNode *opserv;
         struct mod_chanmode *change;
 
         change = mod_chanmode_alloc(argc);
@@ -325,10 +324,8 @@ wipeout_channel(struct chanNode *cNode, time_t new_time, char **modes, unsigned
             }
         }
         assert(argc == change->argc);
-        if (change->argc > 0)
-            mod_chanmode_announce(change->args[0].member->user, cNode, change);
-        else
-            mod_chanmode_announce(opserv, cNode, change);
+        change->args[0].member->modes &= ~MODE_CHANOP;
+        mod_chanmode_announce(change->args[0].member->user, cNode, change);
         mod_chanmode_free(change);
     }
 }