Explorar o código

* Fixed a segfault bug in cmd_mns_/exempt/ban/invite

svn: 529
Bryan Drewery %!s(int64=22) %!d(string=hai) anos
pai
achega
ba3448953a
Modificáronse 2 ficheiros con 4 adicións e 3 borrados
  1. 1 0
      doc/UPDATES
  2. 3 3
      src/mod/channels.mod/cmdschan.c

+ 1 - 0
doc/UPDATES

@@ -31,6 +31,7 @@ This is a summary of ChangeLog basically.
 28.cmd_newleaf now modifies USERENTRY_ADDED for .whois
 29.Passing '?' as the bot to cmd_botcmd will send the cmd to a random leaf.
 30.Userfile is now sorted correctly.
+31.Fixed a segfault bug in cmd_mns_/exempt/ban/invite
 
 1.0.13
 1.Fixed a fatal bug in console_gotshare()

+ 3 - 3
src/mod/channels.mod/cmdschan.c

@@ -429,7 +429,7 @@ static void cmd_mns_ban(struct userrec *u, int idx, char *par)
       chname = dcc[idx].u.chat->con_chan;
     get_user_flagrec(u, &user, chname);
 
-    if (private(user, findchan_by_dname(chname), PRIV_OP)) {
+    if (strchr(CHANMETA, chname[0]) && private(user, findchan_by_dname(chname), PRIV_OP)) {
       dprintf(idx, "No such channel.\n");
       return;
     }
@@ -545,7 +545,7 @@ static void cmd_mns_exempt(struct userrec *u, int idx, char *par)
       chname = dcc[idx].u.chat->con_chan;
     get_user_flagrec(u, &user, chname);
 
-    if (private(user, findchan_by_dname(chname), PRIV_OP)) {
+    if (strchr(CHANMETA, chname[0]) && private(user, findchan_by_dname(chname), PRIV_OP)) {
       dprintf(idx, "No such channel.\n");
       return;
     }
@@ -662,7 +662,7 @@ static void cmd_mns_invite(struct userrec *u, int idx, char *par)
       chname = dcc[idx].u.chat->con_chan;
     get_user_flagrec(u, &user, chname);
 
-    if (private(user, findchan_by_dname(chname), PRIV_OP)) {
+    if (strchr(CHANMETA, chname[0]) && private(user, findchan_by_dname(chname), PRIV_OP)) {
       dprintf(idx, "No such channel.\n");
       return;
     }