setnodelay panda 1.8

hello,

I just downloaded the latest release (I was using nightly build), and I got a problem with this new release:


:express(error): Attempt to cast pointer from Socket_TCP_Listen to Socket_TCP
Assertion failed: (void *)(tcp) != (void *)NULL at line 334 of c:\buildslave\release_sdk_win32\build\panda3d\panda\src\net\connection.cxx

self.tcpSocket.setNoDelay(True)
AssertionError: (void *)(tcp) != (void *)NULL at line 334 of c:\buildslave\release_sdk_win32\build\panda3d\panda\src\net\connection.cxx

I didn’t have this error on a 1.8 build of January.

The code I used :

self.cManager = QueuedConnectionManager()
self.cListener = QueuedConnectionListener(self.cManager, 0)
self.cReader = QueuedConnectionReader(self.cManager, 0)
self.cWriter = ConnectionWriter(self.cManager,0)
		
self.activeConnections=[]                                                    # We'll want to keep track of these later

port_address=9099                                                       #No-other TCP/IP services are using this port
backlog=1000                                                            #If we ignore 1,000 connection attempts, something is wrong!
self.tcpSocket = self.cManager.openTCPServerRendezvous(port_address,backlog)
self.tcpSocket.setNoDelay(True)
self.cListener.addConnection(self.tcpSocket)

Is there any change on networking?

You may call setNoDelay() on the individual connections as they are made to the clients, but not on the rendezvous “connection”. This has always been true, but the mistake wasn’t detected in previous builds.

David