mirror of
				https://gitlab.freedesktop.org/pipewire/pipewire.git
				synced 2025-11-03 09:01:54 -05:00 
			
		
		
		
	pw-link: improve port and node names
don't leave the port and node names blank but fill in some defaults that include the node/port id.
This commit is contained in:
		
							parent
							
								
									532bc878f4
								
							
						
					
					
						commit
						efd22efff8
					
				
					 1 changed files with 22 additions and 13 deletions
				
			
		| 
						 | 
				
			
			@ -194,7 +194,8 @@ static char *node_name(char *buffer, int size, struct object *n)
 | 
			
		|||
	const char *name;
 | 
			
		||||
	buffer[0] = '\0';
 | 
			
		||||
	if ((name = pw_properties_get(n->props, PW_KEY_NODE_NAME)) == NULL)
 | 
			
		||||
		return buffer;
 | 
			
		||||
		snprintf(buffer, size, "node.id.%d", n->id);
 | 
			
		||||
	else
 | 
			
		||||
		snprintf(buffer, size, "%s", name);
 | 
			
		||||
	return buffer;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -204,7 +205,8 @@ static char *node_path(char *buffer, int size, struct object *n)
 | 
			
		|||
	const char *name;
 | 
			
		||||
	buffer[0] = '\0';
 | 
			
		||||
	if ((name = pw_properties_get(n->props, PW_KEY_OBJECT_PATH)) == NULL)
 | 
			
		||||
		return buffer;
 | 
			
		||||
		snprintf(buffer, size, "node.path.%d", n->id);
 | 
			
		||||
	else
 | 
			
		||||
		snprintf(buffer, size, "%s", name);
 | 
			
		||||
	return buffer;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -213,11 +215,16 @@ static char *port_name(char *buffer, int size, struct object *n, struct object *
 | 
			
		|||
{
 | 
			
		||||
	const char *name1, *name2;
 | 
			
		||||
	buffer[0] = '\0';
 | 
			
		||||
	if ((name1 = pw_properties_get(n->props, PW_KEY_NODE_NAME)) == NULL)
 | 
			
		||||
		return buffer;
 | 
			
		||||
	if ((name2 = pw_properties_get(p->props, PW_KEY_PORT_NAME)) == NULL)
 | 
			
		||||
		return buffer;
 | 
			
		||||
	name1 = pw_properties_get(n->props, PW_KEY_NODE_NAME);
 | 
			
		||||
	name2 = pw_properties_get(p->props, PW_KEY_PORT_NAME);
 | 
			
		||||
	if (name1 && name2)
 | 
			
		||||
		snprintf(buffer, size, "%s:%s", name1, name2);
 | 
			
		||||
	else if (name1)
 | 
			
		||||
		snprintf(buffer, size, "%s:port.id.%d", name1, p->id);
 | 
			
		||||
	else if (name2)
 | 
			
		||||
		snprintf(buffer, size, "node.id.%d:%s", n->id, name2);
 | 
			
		||||
	else
 | 
			
		||||
		snprintf(buffer, size, "node.id.%d:port.id.%d", n->id, p->id);
 | 
			
		||||
	return buffer;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -226,7 +233,8 @@ static char *port_path(char *buffer, int size, struct object *n, struct object *
 | 
			
		|||
	const char *name;
 | 
			
		||||
	buffer[0] = '\0';
 | 
			
		||||
	if ((name = pw_properties_get(p->props, PW_KEY_OBJECT_PATH)) == NULL)
 | 
			
		||||
		return buffer;
 | 
			
		||||
		snprintf(buffer, size, "port.path.%d", p->id);
 | 
			
		||||
	else
 | 
			
		||||
		snprintf(buffer, size, "%s", name);
 | 
			
		||||
	return buffer;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -236,7 +244,8 @@ static char *port_alias(char *buffer, int size, struct object *n, struct object
 | 
			
		|||
	const char *name;
 | 
			
		||||
	buffer[0] = '\0';
 | 
			
		||||
	if ((name = pw_properties_get(p->props, PW_KEY_PORT_ALIAS)) == NULL)
 | 
			
		||||
		return buffer;
 | 
			
		||||
		snprintf(buffer, size, "port_alias.%d", p->id);
 | 
			
		||||
	else
 | 
			
		||||
		snprintf(buffer, size, "%s", name);
 | 
			
		||||
	return buffer;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue