Bladeren bron

UI: Fix broken module paths provided via environment on macOS

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.
PatTheMav 1 jaar geleden
bovenliggende
commit
7ffc38ebb6
1 gewijzigde bestanden met toevoegingen van 6 en 0 verwijderingen
  1. 6 0
      UI/window-basic-main.cpp

+ 6 - 0
UI/window-basic-main.cpp

@@ -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)