diff --git a/sunshine/stream.cpp b/sunshine/stream.cpp index ccc6c697..a86f4cca 100644 --- a/sunshine/stream.cpp +++ b/sunshine/stream.cpp @@ -884,9 +884,6 @@ state_e state(session_t &session) { void stop(session_t &session) { while_starting_do_nothing(session.state); - - //Reset input on session stop to avoid stuck repeated keys - input::reset(); auto expected = state_e::RUNNING; auto already_stopping = !session.state.compare_exchange_strong(expected, state_e::STOPPING); if(already_stopping) { @@ -903,6 +900,9 @@ void join(session_t &session) { session.audioThread.join(); BOOST_LOG(debug) << "Waiting for control to end..."sv; session.controlEnd.view(); + //Reset input on session stop to avoid stuck repeated keys + BOOST_LOG(debug) << "Resetting Input..."sv; + input::reset(); BOOST_LOG(debug) << "Session ended"sv; }