]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/mode.cpp
Missing a changeover
[user/henk/code/inspircd.git] / src / mode.cpp
index 913cea8a0faaf2ba556d4eb37e4c063b0e4ac143..0436d04be107768f6490b5c3113b90e84d2b3668 100644 (file)
@@ -1483,6 +1483,20 @@ void ModeParser::ServerMode(char **parameters, int pcnt, userrec *user)
                                                                {
                                                                        charlcat(dmodes,*i,MAXBUF);
                                                                        charlcat(outpars,*i,53);
+                                                                        switch (*i)
+                                                                        {
+                                                                                case 'i':
+                                                                                        dest->modebits |= UM_INVISIBLE;
+                                                                                break;
+                                                                                case 's':
+                                                                                        dest->modebits |= UM_SERVERNOTICE;
+                                                                                break;
+                                                                                case 'w':
+                                                                                        dest->modebits |= UM_WALLOPS;
+                                                                                break;
+                                                                                default:
+                                                                                break;
+                                                                        }
                                                                }
                                                        }
                                                }
@@ -1497,6 +1511,20 @@ void ModeParser::ServerMode(char **parameters, int pcnt, userrec *user)
                                                                {
                                                                        charlcat(outpars,*i,MAXBUF);
                                                                        charremove(dmodes,*i);
+                                                                        switch (*i)
+                                                                        {
+                                                                                case 'i':
+                                                                                        dest->modebits &= ~UM_INVISIBLE;
+                                                                                break;
+                                                                                case 's':
+                                                                                        dest->modebits &= ~UM_SERVERNOTICE;
+                                                                                break;
+                                                                                case 'w':
+                                                                                        dest->modebits &= ~UM_WALLOPS;
+                                                                                break;
+                                                                                default:
+                                                                                break;
+                                                                        }
                                                                }
                                                        }
                                                }