PDA

View Full Version : Saylink's Crashing Zone on No Target Fix


Akkadius
05-03-2010, 03:49 PM
Now I had a problem on my server which obviously isn't released yet, but with the amount saylinks that we have that aren't silent causing zone crashes were blowing up on recent revisions.

This is just a general fix that Secrets helped with and now saylinks no longer crash zones without a target, and of course still function normally.

Index: client.cpp
================================================== =================
--- client.cpp (revision 1451)
+++ client.cpp (working copy)
@@ -737,7 +737,8 @@
if (targetname == NULL) {
targetname = (!GetTarget()) ? NULL : GetTarget()->GetName();
}
-
+if(targetname)
+{
if(RuleB(Chat, EnableAntiSpam))
{
if(strcmp(targetname, "discard") != 0)
@@ -758,7 +759,7 @@

if(RuleI(Chat, MinStatusToBypassAntiSpam) <= Admin())
AllowedMessages = 10000;
-
+
AttemptedMessages++;
if(AttemptedMessages > AllowedMessages)
{
@@ -782,6 +783,7 @@
}
}
}
+ }

switch(chan_num)
{

trevius
05-03-2010, 09:22 PM
I briefly looked this over, but I am not seeing where the crash would be caused from the code before making that change.

Saylinks just send this from client_packet.cpp
this->ChannelMessageReceived(8, 0, 100, response);

Akkadius
05-04-2010, 11:37 AM
I don't know what to say then, I will probably continue to use those 3 lines until it stops crashing the zones when not targeted.