mirror of
				https://gitlab.freedesktop.org/pipewire/pipewire.git
				synced 2025-11-03 09:01:54 -05:00 
			
		
		
		
	combine-stream: check module arguments for syntax errors
Refuse to create module if the arguments were not properly parsed.
This commit is contained in:
		
							parent
							
								
									cd166ac899
								
							
						
					
					
						commit
						e1849a0650
					
				
					 1 changed files with 8 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -21,6 +21,7 @@
 | 
			
		|||
#include <spa/utils/json.h>
 | 
			
		||||
#include <spa/utils/ringbuffer.h>
 | 
			
		||||
#include <spa/debug/types.h>
 | 
			
		||||
#include <spa/debug/log.h>
 | 
			
		||||
#include <spa/pod/builder.h>
 | 
			
		||||
#include <spa/param/audio/format-utils.h>
 | 
			
		||||
#include <spa/param/audio/raw.h>
 | 
			
		||||
| 
						 | 
				
			
			@ -1439,6 +1440,7 @@ int pipewire__module_init(struct pw_impl_module *module, const char *args)
 | 
			
		|||
	struct impl *impl;
 | 
			
		||||
	const char *str, *prefix;
 | 
			
		||||
	int res;
 | 
			
		||||
	struct spa_error_location loc = {};
 | 
			
		||||
 | 
			
		||||
	PW_LOG_TOPIC_INIT(mod_topic);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -1455,10 +1457,14 @@ int pipewire__module_init(struct pw_impl_module *module, const char *args)
 | 
			
		|||
	if (args == NULL)
 | 
			
		||||
		args = "";
 | 
			
		||||
 | 
			
		||||
	props = pw_properties_new_string(args);
 | 
			
		||||
	props = pw_properties_new_string_checked(args, strlen(args), &loc);
 | 
			
		||||
	if (props == NULL) {
 | 
			
		||||
		res = -errno;
 | 
			
		||||
		pw_log_error( "can't create properties: %m");
 | 
			
		||||
		if (loc.reason)
 | 
			
		||||
			spa_debug_log_error_location(pw_log_get(), SPA_LOG_LEVEL_ERROR, &loc,
 | 
			
		||||
					"invalid module arguments: %s", loc.reason);
 | 
			
		||||
		else
 | 
			
		||||
			pw_log_error("can't create properties: %m");
 | 
			
		||||
		goto error;
 | 
			
		||||
	}
 | 
			
		||||
	impl->props = props;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue