mirror of
				https://gitlab.freedesktop.org/pipewire/pipewire.git
				synced 2025-11-03 09:01:54 -05:00 
			
		
		
		
	pipewire: impl-module: simplify module dir handling logic
Since `pw_split_walk()` does not skip leading runs of delimiters, if `module_dir` is an absolute path, then l = pw_split_strv(module_dir, "/", 0, &n_paths); will return an array of one element, which is exactly the same as `module_dir`, `strcmp(l[0], module_dir) == 0`. If `module_dir` is a relative path, then the returned array still contains a single element, which is, again, the same as `module_dir`. Therefore, omit the the call to `pw_split_strv()` and simply use `module_dir` as is.
This commit is contained in:
		
							parent
							
								
									0f03109cb6
								
							
						
					
					
						commit
						a8428a57b1
					
				
					 1 changed files with 6 additions and 16 deletions
				
			
		| 
						 | 
					@ -168,25 +168,15 @@ pw_context_load_module(struct pw_context *context,
 | 
				
			||||||
	pw_impl_module_init_func_t init_func;
 | 
						pw_impl_module_init_func_t init_func;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	module_dir = getenv("PIPEWIRE_MODULE_DIR");
 | 
						module_dir = getenv("PIPEWIRE_MODULE_DIR");
 | 
				
			||||||
	if (module_dir != NULL) {
 | 
						if (module_dir == NULL) {
 | 
				
			||||||
		char **l;
 | 
							module_dir = MODULEDIR;
 | 
				
			||||||
		int i, n_paths;
 | 
							pw_log_debug("moduledir set to: %s", module_dir);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else {
 | 
				
			||||||
		pw_log_debug("PIPEWIRE_MODULE_DIR set to: %s", module_dir);
 | 
							pw_log_debug("PIPEWIRE_MODULE_DIR set to: %s", module_dir);
 | 
				
			||||||
 | 
					 | 
				
			||||||
		l = pw_split_strv(module_dir, "/", 0, &n_paths);
 | 
					 | 
				
			||||||
		for (i = 0; l[i] != NULL; i++) {
 | 
					 | 
				
			||||||
			filename = find_module(l[i], name);
 | 
					 | 
				
			||||||
			if (filename != NULL)
 | 
					 | 
				
			||||||
				break;
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
		pw_free_strv(l);
 | 
					 | 
				
			||||||
	} else {
 | 
					 | 
				
			||||||
		pw_log_debug("moduledir set to: %s", MODULEDIR);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		filename = find_module(MODULEDIR, name);
 | 
					 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						filename = find_module(module_dir, name);
 | 
				
			||||||
	if (filename == NULL)
 | 
						if (filename == NULL)
 | 
				
			||||||
		goto error_not_found;
 | 
							goto error_not_found;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue