mirror of
				https://gitlab.freedesktop.org/pipewire/pipewire.git
				synced 2025-11-03 09:01:54 -05:00 
			
		
		
		
	pulse-server: make GET_SERVER_INFO accessible without manager
For example, pulseaudio.js[1] immediately sends a GET_SERVER_INFO request after AUTH, and only later issues a SET_CLIENT_NAME. See #1966. [1]: https://github.com/janakj/pulseaudio.js
This commit is contained in:
		
							parent
							
								
									1c3e45a584
								
							
						
					
					
						commit
						e35b9828d3
					
				
					 1 changed files with 4 additions and 5 deletions
				
			
		| 
						 | 
				
			
			@ -3146,13 +3146,12 @@ static int do_get_server_info(struct client *client, uint32_t command, uint32_t
 | 
			
		|||
{
 | 
			
		||||
	struct impl *impl = client->impl;
 | 
			
		||||
	struct pw_manager *manager = client->manager;
 | 
			
		||||
	struct pw_core_info *info = manager->info;
 | 
			
		||||
	struct pw_core_info *info = manager ? manager->info : NULL;
 | 
			
		||||
	char name[256];
 | 
			
		||||
	struct message *reply;
 | 
			
		||||
 | 
			
		||||
	pw_log_info("[%s] GET_SERVER_INFO tag:%u", client->name, tag);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
	snprintf(name, sizeof(name), "PulseAudio (on PipeWire %s)", pw_get_library_version());
 | 
			
		||||
 | 
			
		||||
	reply = reply_new(client, tag);
 | 
			
		||||
| 
						 | 
				
			
			@ -3162,8 +3161,8 @@ static int do_get_server_info(struct client *client, uint32_t command, uint32_t
 | 
			
		|||
		TAG_STRING, pw_get_user_name(),
 | 
			
		||||
		TAG_STRING, pw_get_host_name(),
 | 
			
		||||
		TAG_SAMPLE_SPEC, &impl->defs.sample_spec,
 | 
			
		||||
		TAG_STRING, get_default(client, true),		/* default sink name */
 | 
			
		||||
		TAG_STRING, get_default(client, false),		/* default source name */
 | 
			
		||||
		TAG_STRING, manager ? get_default(client, true) : "",	/* default sink name */
 | 
			
		||||
		TAG_STRING, manager ? get_default(client, false) : "",	/* default source name */
 | 
			
		||||
		TAG_U32, info ? info->cookie : 0,			/* cookie */
 | 
			
		||||
		TAG_INVALID);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -4869,7 +4868,7 @@ const struct command commands[COMMAND_MAX] =
 | 
			
		|||
	COMMAND(PLAY_SAMPLE, do_play_sample),
 | 
			
		||||
	COMMAND(REMOVE_SAMPLE, do_remove_sample),
 | 
			
		||||
 | 
			
		||||
	COMMAND(GET_SERVER_INFO, do_get_server_info),
 | 
			
		||||
	COMMAND(GET_SERVER_INFO, do_get_server_info, COMMAND_ACCESS_WITHOUT_MANAGER),
 | 
			
		||||
	COMMAND(GET_SINK_INFO, do_get_info),
 | 
			
		||||
	COMMAND(GET_SOURCE_INFO, do_get_info),
 | 
			
		||||
	COMMAND(GET_MODULE_INFO, do_get_info),
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue