disconnect event is now distinct from close event