diff --git a/sunshine/stream.cpp b/sunshine/stream.cpp index e97e5c80..a870b4ef 100644 --- a/sunshine/stream.cpp +++ b/sunshine/stream.cpp @@ -118,6 +118,18 @@ struct session_t { std::string app_name; } session; +void free_host(ENetHost *host) { + std::for_each(host->peers, host->peers + host->peerCount, [](ENetPeer &peer_ref) { + ENetPeer *peer = &peer_ref; + + if(peer) { + enet_peer_disconnect_now(peer, 0); + } + }); + + enet_host_destroy(host); +} + void free_msg(PRTSP_MESSAGE msg) { freeMessage(msg); @@ -126,7 +138,7 @@ void free_msg(PRTSP_MESSAGE msg) { using msg_t = util::safe_ptr; using packet_t = util::safe_ptr; -using host_t = util::safe_ptr; +using host_t = util::safe_ptr; using peer_t = ENetPeer*; using rh_t = util::safe_ptr; using video_packet_t = util::safe_ptr;