[Core] Serial-protocol: always clear receive queue on main half of split keyboard (#18419)
This commit is contained in:
		
							parent
							
								
									ca0c12847a
								
							
						
					
					
						commit
						6bbcabe0cc
					
				
					 1 changed files with 4 additions and 8 deletions
				
			
		| 
						 | 
				
			
			@ -102,15 +102,11 @@ static inline bool react_to_transaction(void) {
 | 
			
		|||
 * @return bool Indicates success of transaction.
 | 
			
		||||
 */
 | 
			
		||||
bool soft_serial_transaction(int index) {
 | 
			
		||||
    bool result = initiate_transaction((uint8_t)index);
 | 
			
		||||
    /* Clear the receive queue, to start with a clean slate.
 | 
			
		||||
     * Parts of failed transactions or spurious bytes could still be in it. */
 | 
			
		||||
    serial_transport_driver_clear();
 | 
			
		||||
 | 
			
		||||
    if (unlikely(!result)) {
 | 
			
		||||
        /* Clear the receive queue, to start with a clean slate.
 | 
			
		||||
         * Parts of failed transactions or spurious bytes could still be in it. */
 | 
			
		||||
        serial_transport_driver_clear();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    return result;
 | 
			
		||||
    return initiate_transaction((uint8_t)index);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue