Bug in OOB data handling

There’s a bug in the TCP OOB (out of band) data handling code in all versions of The Server Framework from 6.6 through to 7.4. This issue manifests as a purecall during socket destruction and is due to a race condition during the release of the last two references held on a socket. If you don’t use OOB then a simple work around is to comment out the following in TAsyncSocket.h in the Release() function.

   //else if (1 == ref)
   //   CancelIOIfNecessary();

A proper fix will be included in the 7.5 release which, now that we have a bug file rather than just new features, will be released shortly.