mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-02 09:01:50 -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;
|
||||
|
||||
module_dir = getenv("PIPEWIRE_MODULE_DIR");
|
||||
if (module_dir != NULL) {
|
||||
char **l;
|
||||
int i, n_paths;
|
||||
|
||||
if (module_dir == NULL) {
|
||||
module_dir = MODULEDIR;
|
||||
pw_log_debug("moduledir set to: %s", module_dir);
|
||||
}
|
||||
else {
|
||||
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)
|
||||
goto error_not_found;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue