Hi, I'm new on this community.
How can i fix this error: fdwatch : per null in event?
Can someone help me please?
I'm working on 40k
Thx!
EDIT:
i found this in ClientManager.cpp
int num_events = fdwatch(m_fdWatcher, 0);
int idx;
CPeer * peer;
for (idx = 0; idx < num_events; ++idx) // 인풋
{
peer = (CPeer *) fdwatch_get_client_data(m_fdWatcher, idx);
if (!peer)
{
if (fdwatch_check_event(m_fdWatcher, m_fdAccept, idx) == FDW_READ)
{
AddPeer(m_fdAccept);
fdwatch_clear_event(m_fdWatcher, m_fdAccept, idx);
}
else
{
sys_err("FDWATCH: peer null in event: ident %d", fdwatch_get_ident(m_fdWatcher, idx));
}
continue;
}
switch (fdwatch_check_event(m_fdWatcher, peer->GetFd(), idx))
{
case FDW_READ:
if (peer->Recv() < 0)
{
sys_err("Recv failed");
RemovePeer(peer);
}
else
{
if (peer == m_pkAuthPeer)
if (g_log)
sys_log(0, "AUTH_PEER_READ: size %d", peer->GetRecvLength());
ProcessPackets(peer);
}
break;
case FDW_WRITE:
if (peer == m_pkAuthPeer)
if (g_log)
sys_log(0, "AUTH_PEER_WRITE: size %d", peer->GetSendLength());
if (peer->Send() < 0)
{
sys_err("Send failed");
RemovePeer(peer);
}
break;
case FDW_EOF:
RemovePeer(peer);
break;
default:
sys_err("fdwatch_check_fd returned unknown result");
RemovePeer(peer);
break;
}
}
but i don't no how can i cancel this error.