input_common: Allow timeouts to happen while scanning for a ring
This commit is contained in:
		@@ -75,7 +75,7 @@ Common::Input::DriverResult JoyconCommonProtocol::SendRawData(std::span<const u8
 | 
			
		||||
Common::Input::DriverResult JoyconCommonProtocol::GetSubCommandResponse(
 | 
			
		||||
    SubCommand sc, SubCommandResponse& output) {
 | 
			
		||||
    constexpr int timeout_mili = 66;
 | 
			
		||||
    constexpr int MaxTries = 3;
 | 
			
		||||
    constexpr int MaxTries = 10;
 | 
			
		||||
    int tries = 0;
 | 
			
		||||
 | 
			
		||||
    do {
 | 
			
		||||
 
 | 
			
		||||
@@ -70,7 +70,7 @@ Common::Input::DriverResult RingConProtocol::StartRingconPolling() {
 | 
			
		||||
 | 
			
		||||
Common::Input::DriverResult RingConProtocol::IsRingConnected(bool& is_connected) {
 | 
			
		||||
    LOG_DEBUG(Input, "IsRingConnected");
 | 
			
		||||
    constexpr std::size_t max_tries = 28;
 | 
			
		||||
    constexpr std::size_t max_tries = 42;
 | 
			
		||||
    SubCommandResponse output{};
 | 
			
		||||
    std::size_t tries = 0;
 | 
			
		||||
    is_connected = false;
 | 
			
		||||
@@ -78,7 +78,8 @@ Common::Input::DriverResult RingConProtocol::IsRingConnected(bool& is_connected)
 | 
			
		||||
    do {
 | 
			
		||||
        const auto result = SendSubCommand(SubCommand::GET_EXTERNAL_DEVICE_INFO, {}, output);
 | 
			
		||||
 | 
			
		||||
        if (result != Common::Input::DriverResult::Success) {
 | 
			
		||||
        if (result != Common::Input::DriverResult::Success &&
 | 
			
		||||
            result != Common::Input::DriverResult::Timeout) {
 | 
			
		||||
            return result;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user