aboutsummaryrefslogtreecommitdiffstats
path: root/src/users.cpp
diff options
context:
space:
mode:
authorGravatar brain2006-01-03 18:26:25 +0000
committerGravatar brain2006-01-03 18:26:25 +0000
commitc992372f80a3668ca3dd1b62ebe7b8284111bd0a (patch)
tree30880be41fa2ffdc3591e89e0b5677677fd5f5c7 /src/users.cpp
parentAdded CASEMAPPING and CHARSET to ISUPPORT (005) (diff)
downloadinspircd++-c992372f80a3668ca3dd1b62ebe7b8284111bd0a.tar.gz
inspircd++-c992372f80a3668ca3dd1b62ebe7b8284111bd0a.tar.bz2
inspircd++-c992372f80a3668ca3dd1b62ebe7b8284111bd0a.zip
Fixed to not crash on /PARK (still more to test)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2729 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/users.cpp')
-rw-r--r--src/users.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/users.cpp b/src/users.cpp
index e913086c2..5429e612e 100644
--- a/src/users.cpp
+++ b/src/users.cpp
@@ -284,7 +284,7 @@ void userrec::AddWriteBuf(std::string data)
// send AS MUCH OF THE USERS SENDQ as we are able to (might not be all of it)
void userrec::FlushWriteBuf()
{
- if (sendq.length())
+ if ((sendq.length()) && (this->fd != FD_MAGIC_NUMBER))
{
char* tb = (char*)this->sendq.c_str();
int n_sent = write(this->fd,tb,this->sendq.length());
@@ -467,7 +467,8 @@ void AddWhoWas(userrec* u)
strlcpy(a->dhost,u->dhost,160);
strlcpy(a->host,u->host,160);
strlcpy(a->fullname,u->fullname,MAXGECOS);
- strlcpy(a->server,u->server,256);
+ if (u->server)
+ strlcpy(a->server,u->server,256);
a->signon = u->signon;
/* MAX_WHOWAS: max number of /WHOWAS items