In my hunt for memory leeks you may want to look at what I've found.
// Code to be executed by the thread
void *vncSockConnectThread::run_undetached(void * arg)
{
log.Print(LL_STATE, VNCLOG("started socket connection thread\n"));
// Go into a loop, listening for connections on the given socket
while (!m_shutdown)
{
// Accept an incoming connection
VSocket *new_socket = m_socket->Accept();
if (new_socket == NULL || m_shutdown) // PJM change do the m_shutdown check
after the accept
break;
log.Print(LL_CLIENTS, VNCLOG("accepted connection from %s\n"),
new_socket->GetPeerName());
// Successful accept - start the client unauthenticated
m_server->AddClient(new_socket, FALSE, FALSE);
}
log.Print(LL_STATE, VNCLOG("quitting socket connection thread\n"));
return NULL;
}
On my system anyway checking for m_shutdown after the accept stops vnc trying
to add a new client to a spureous ip address when the service is stopped form
the service control panel.
Hope this is helpful
___________________________________________
Philip Miller
TISL
---------------------------------------------------------------------
To unsubscribe, send a message with the line: unsubscribe vnc-list
to [EMAIL PROTECTED]
See also: http://www.uk.research.att.com/vnc/intouch.html
---------------------------------------------------------------------