mirror of
				https://github.com/alsa-project/alsa-lib.git
				synced 2025-11-03 09:01:52 -05:00 
			
		
		
		
	Added missing defaults to alsa.conf.
Function snd_func_macro is now an alias to snd_func_refer.
This commit is contained in:
		
							parent
							
								
									0c5b3434a8
								
							
						
					
					
						commit
						b811df2efe
					
				
					 2 changed files with 9 additions and 37 deletions
				
			
		| 
						 | 
				
			
			@ -19,6 +19,12 @@ defaults.pcm.device 0
 | 
			
		|||
defaults.pcm.subdevice -1
 | 
			
		||||
defaults.pcm.front.card defaults.pcm.card
 | 
			
		||||
defaults.pcm.front.device defaults.pcm.device
 | 
			
		||||
defaults.pcm.rear.card defaults.pcm.card
 | 
			
		||||
defaults.pcm.rear.device defaults.pcm.device
 | 
			
		||||
defaults.pcm.surround40.card defaults.pcm.card
 | 
			
		||||
defaults.pcm.surround40.device defaults.pcm.device
 | 
			
		||||
defaults.pcm.surround51.card defaults.pcm.card
 | 
			
		||||
defaults.pcm.surround51.device defaults.pcm.device
 | 
			
		||||
defaults.rawmidi.card 0
 | 
			
		||||
defaults.rawmidi.device 0
 | 
			
		||||
defaults.rawmidi.subdevice -1
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -692,40 +692,6 @@ int snd_func_refer(snd_config_t **dst, snd_config_t *root, snd_config_t *src, vo
 | 
			
		|||
	return err;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
int snd_func_macro(snd_config_t **dst, snd_config_t *root, snd_config_t *src, void *private_data)
 | 
			
		||||
{
 | 
			
		||||
	snd_config_t *n;
 | 
			
		||||
	const char *name;
 | 
			
		||||
	char *buf = NULL;
 | 
			
		||||
	int err;
 | 
			
		||||
 | 
			
		||||
	err = snd_config_search(src, "name", &n);
 | 
			
		||||
	if (err >= 0) {
 | 
			
		||||
		err = snd_config_evaluate(n, root, private_data, NULL);
 | 
			
		||||
		if (err < 0) {
 | 
			
		||||
			SNDERR("error evaluating name");
 | 
			
		||||
			goto _end;
 | 
			
		||||
		}
 | 
			
		||||
		err = snd_config_get_string(n, &name);
 | 
			
		||||
		if (err < 0) {
 | 
			
		||||
			SNDERR("name is not a string");
 | 
			
		||||
			goto _end;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	if (strchr(name, '.') == NULL) {
 | 
			
		||||
		buf = malloc(6 + strlen(name) + 1);
 | 
			
		||||
		if (buf == NULL) {
 | 
			
		||||
			err = -ENOMEM;
 | 
			
		||||
			goto _end;
 | 
			
		||||
		}
 | 
			
		||||
		strcpy(buf, "macro.");
 | 
			
		||||
		strcat(buf, name);
 | 
			
		||||
	}
 | 
			
		||||
	err = snd_config_search_definition(root, NULL, name, dst);
 | 
			
		||||
	if (err < 0)
 | 
			
		||||
		SNDERR("Unable to find macro definition '%s'", name);
 | 
			
		||||
       _end:
 | 
			
		||||
       	if (buf)
 | 
			
		||||
       		free(buf);
 | 
			
		||||
       	return err;
 | 
			
		||||
}
 | 
			
		||||
int snd_func_macro(snd_config_t **dst, snd_config_t *root,
 | 
			
		||||
		   snd_config_t *src, void *private_data)
 | 
			
		||||
		   	__attribute__ ((weak, alias ("snd_func_refer")));
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue