use original onDisconnect