summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2004-04-04 23:19:13 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2004-04-04 23:19:13 +0000
commitc5ad0a19cbf86510fc0b75ac96ea9d57598da91f (patch)
tree907fb3df668dee5cdbc878738b9eae8fb691242b
parentdf37353f41c864b090c15db9f795ebfe7b8092bf (diff)
Fixed a bug in servermode handling where the target is a channel, found by ChroNiCk
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@382 e03df62e-2008-0410-955e-edbf42e46eb7
-rw-r--r--src/InspIRCd.layout38
-rw-r--r--src/inspircd.cpp6
-rw-r--r--src/modules/m_testcommand.cpp19
3 files changed, 27 insertions, 36 deletions
diff --git a/src/InspIRCd.layout b/src/InspIRCd.layout
index e2b9be54a..55dc76618 100644
--- a/src/InspIRCd.layout
+++ b/src/InspIRCd.layout
@@ -1,5 +1,5 @@
[Editors]
-Focused=1
+Focused=-1
Order=7,3,2,6,25,24,1,4,5,0,-1
[Editor_0]
@@ -12,10 +12,10 @@ LeftChar=1
[Editor_1]
Open=1
-Top=1
-CursorCol=40
-CursorRow=403
-TopLine=381
+Top=0
+CursorCol=22
+CursorRow=384
+TopLine=372
LeftChar=1
[Editor_2]
@@ -37,9 +37,9 @@ LeftChar=1
[Editor_4]
Open=1
Top=0
-CursorCol=1
-CursorRow=37
-TopLine=6
+CursorCol=2
+CursorRow=312
+TopLine=258
LeftChar=1
[Editor_5]
@@ -131,18 +131,18 @@ TopLine=1
LeftChar=1
[Editor_16]
-Open=0
+Open=1
Top=0
-CursorCol=21
-CursorRow=22
+CursorCol=1
+CursorRow=42
TopLine=1
LeftChar=1
[Editor_17]
-Open=0
+Open=1
Top=0
-CursorCol=5
-CursorRow=88
+CursorCol=6
+CursorRow=86
TopLine=34
LeftChar=1
@@ -209,9 +209,9 @@ CursorRow=76
TopLine=1
LeftChar=1
[Editor_26]
-Open=0
-Top=0
-CursorCol=7
-CursorRow=63
-TopLine=27
+Open=1
+Top=1
+CursorCol=1
+CursorRow=95
+TopLine=41
LeftChar=1
diff --git a/src/inspircd.cpp b/src/inspircd.cpp
index 3b9835f67..72b965741 100644
--- a/src/inspircd.cpp
+++ b/src/inspircd.cpp
@@ -2660,7 +2660,11 @@ void server_mode(char **parameters, int pcnt, userrec *user)
dest = Find(parameters[0]);
- log(DEBUG,"server_mode on %s",dest->nick);
+ // fix: ChroNiCk found this - we cant use this as debug if its null!
+ if (dest)
+ {
+ log(DEBUG,"server_mode on %s",dest->nick);
+ }
if ((dest) && (pcnt > 1))
{
diff --git a/src/modules/m_testcommand.cpp b/src/modules/m_testcommand.cpp
index 8f49277cd..307f11ad6 100644
--- a/src/modules/m_testcommand.cpp
+++ b/src/modules/m_testcommand.cpp
@@ -11,19 +11,7 @@ Server *Srv;
void handle_woot(char **parameters, int pcnt, userrec *user)
{
- // this test command just accepts:
- // /woot :<text>
- // and sends <text> to all opers with +s mode.
- // NB: The ':' is *REQUIRED* otherwise the parser will
- // split the line into multiple parameters[]!
- //
- // If you want to process all the line with no leading colon, you must
- // implement a parser here that assembles parameters[] to match the
- // syntax of your command - the way it is done in the core is to meet
- // rfc-compatibility.
- Srv->SendOpers(parameters[0]);
-
-
+ Srv->Log(DEBUG,"woot handler");
// Here is a sample of how to send servermodes. Note that unless remote
// servers in your net are u:lined, they may reverse this, but its a
// quick and effective modehack.
@@ -52,7 +40,7 @@ class ModuleTestCommand : public Module
// 0 in the modes parameter signifies that
// anyone can issue the command, and the
// command takes only one parameter.
- Srv->AddCommand("WOOT",handle_woot,0,1);
+ Srv->AddCommand("WOOT",handle_woot,0,0);
// Add a mode +Z for channels with no parameters
Srv->AddExtendedMode('Z',MT_CHANNEL,false,1,0);
@@ -73,8 +61,7 @@ class ModuleTestCommand : public Module
else {
Srv->Log(DEBUG,"Custom mode is being taken from a channel");
}
- Srv->Log(DEBUG,chan->name);
-
+
// must return 1 to handle the mode!
return 1;
}