From 1098c75d34379502b06628dfa58c35b805f2a11e Mon Sep 17 00:00:00 2001 From: BtbN Date: Sat, 19 Jul 2014 10:25:55 +0200 Subject: [PATCH] Search for plugins without lib prefix Fixes #213 --- libobs/obs-nix.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/libobs/obs-nix.c b/libobs/obs-nix.c index 04165666c..5818a24a7 100644 --- a/libobs/obs-nix.c +++ b/libobs/obs-nix.c @@ -41,7 +41,7 @@ static inline bool check_lib_path(const char* data, const char *path, bool result = false; struct dstr tmp; - dstr_init_copy(&tmp, "lib"); + dstr_init(&tmp); dstr_cat(&tmp, data); dstr_cat(&tmp, ".so"); result = check_path(tmp.array, path, output); @@ -63,9 +63,15 @@ char *find_plugin(const char *plugin) if(sizeof(void*) == 4) { if (check_lib_path(plugin, "../../obs-plugins/32bit/", &output)) return output.array; + + if (check_lib_path(plugin, "../../obs-plugins/32bit/lib", &output)) + return output.array; } else { if (check_lib_path(plugin, "../../obs-plugins/64bit/", &output)) return output.array; + + if (check_lib_path(plugin, "../../obs-plugins/64bit/lib", &output)) + return output.array; } if (OBS_INSTALL_PREFIX [0] != 0) { @@ -73,6 +79,11 @@ char *find_plugin(const char *plugin) OBS_INSTALL_PREFIX "lib/obs-plugins/", &output)) return output.array; + + if (check_lib_path(plugin, + OBS_INSTALL_PREFIX "lib/obs-plugins/lib", + &output)) + return output.array; } dstr_free(&output);