mirror of
				https://github.com/alsa-project/alsa-lib.git
				synced 2025-11-03 09:01:52 -05:00 
			
		
		
		
	ucm: Handle 'Error' keyword in the master file
With the conditional blocks, it may be useful to terminate the hardware detection from the configuration. Introduce 'Error' keyword for the master UCM configuration file. Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
		
							parent
							
								
									c1e72460de
								
							
						
					
					
						commit
						e80f35611d
					
				
					 1 changed files with 22 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -244,6 +244,24 @@ int parse_get_safe_name(snd_use_case_mgr_t *uc_mgr, snd_config_t *n,
 | 
			
		|||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Handle 'Error' configuration node.
 | 
			
		||||
 */
 | 
			
		||||
static int error_node(snd_use_case_mgr_t *uc_mgr, snd_config_t *cfg)
 | 
			
		||||
{
 | 
			
		||||
	int err;
 | 
			
		||||
	char *s;
 | 
			
		||||
 | 
			
		||||
	err = parse_string_substitute3(uc_mgr, cfg, &s);
 | 
			
		||||
	if (err < 0) {
 | 
			
		||||
		uc_error("error: failed to get Error string");
 | 
			
		||||
		return err;
 | 
			
		||||
	}
 | 
			
		||||
	uc_error("%s", s);
 | 
			
		||||
	free(s);
 | 
			
		||||
	return -ENXIO;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
 * Evaluate variable regex definitions (in-place delete)
 | 
			
		||||
 */
 | 
			
		||||
| 
						 | 
				
			
			@ -1899,6 +1917,10 @@ static int parse_master_file(snd_use_case_mgr_t *uc_mgr, snd_config_t *cfg)
 | 
			
		|||
			continue;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		/* error */
 | 
			
		||||
		if (strcmp(id, "Error") == 0)
 | 
			
		||||
			return error_node(uc_mgr, n);
 | 
			
		||||
 | 
			
		||||
		uc_error("uknown master file field %s", id);
 | 
			
		||||
	}
 | 
			
		||||
	return 0;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue