Skip to content

Commit

Permalink
UI: Fix broken module paths provided via environment on macOS
Browse files Browse the repository at this point in the history
When custom module and module data paths are provided via environment
variables, the module paths generated by current code will not be
compatible with the plugin bundle structure used on macOS.

Using environment variables is a simple way to test plugins,
as this allows OBS to discover them from alternative user-provided
locations.
  • Loading branch information
PatTheMav authored and RytoEX committed Nov 20, 2024
1 parent ca342c2 commit 7ffc38e
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions UI/window-basic-main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -181,10 +181,16 @@ static void AddExtraModulePaths()
plugins_data_path = s;

if (!plugins_path.empty() && !plugins_data_path.empty()) {
#if defined(__APPLE__)
plugins_path += "/%module%.plugin/Contents/MacOS";
plugins_data_path += "/%module%.plugin/Contents/Resources";
obs_add_module_path(plugins_path.c_str(), plugins_data_path.c_str());
#else
string data_path_with_module_suffix;
data_path_with_module_suffix += plugins_data_path;
data_path_with_module_suffix += "/%module%";
obs_add_module_path(plugins_path.c_str(), data_path_with_module_suffix.c_str());
#endif
}

if (portable_mode)
Expand Down

0 comments on commit 7ffc38e

Please sign in to comment.