fixed modcmd (allow #chan parameter in custom parameter list)
authorpk910 <philipp@zoelle1.de>
Fri, 6 Jan 2012 23:39:09 +0000 (00:39 +0100)
committerpk910 <philipp@zoelle1.de>
Fri, 6 Jan 2012 23:39:09 +0000 (00:39 +0100)
src/modcmd.c

index ce76ca056d52ada5f9e423dde6ab4708161bb141..5d6bae3b62a04d68a97031fd004d0608ec0d83ba 100644 (file)
@@ -242,14 +242,6 @@ static void handle_command(struct ClientSocket *client, struct UserNode *user, s
                 }
             }
             argv = arga;
-            if(argc != 0 && argv[0][0] == '#' && !(BIND_FLAGS(cbind) & CMDFLAG_CHAN_PARAM)) {
-                struct ChanNode *chan2 = getChanByName(argv[0]);
-                if(chan2) {
-                    argv += 1;
-                    argc -= 1;
-                    chan = chan2;
-                }
-            }
             if(cbind->paramcount) {
                 //userdefined parameters...
                 args_buffer = malloc(MAXLEN * 2 * sizeof(*args_buffer));
@@ -330,6 +322,14 @@ static void handle_command(struct ClientSocket *client, struct UserNode *user, s
                 argv = uargs;
                 argc = uargc;
             }
+            if(argc != 0 && argv[0][0] == '#' && !(BIND_FLAGS(cbind) & CMDFLAG_CHAN_PARAM)) {
+                struct ChanNode *chan2 = getChanByName(argv[0]);
+                if(chan2) {
+                    argv += 1;
+                    argc -= 1;
+                    chan = chan2;
+                }
+            }
             if(argc < cbind->func->paramcount) {
                 reply(tmp_text_client, user, "MODCMD_LESS_PARAM_COUNT");
                 break;