浏览代码

obs-scripting: Fix macOS Homebrew Python loading

jcm 10 月之前
父节点
当前提交
83934acb44
共有 2 个文件被更改,包括 4 次插入3 次删除
  1. 2 2
      shared/obs-scripting/obs-scripting-python-import.c
  2. 2 1
      shared/obs-scripting/obs-scripting-python.c

+ 2 - 2
shared/obs-scripting/obs-scripting-python-import.c

@@ -35,7 +35,7 @@
 #define PATH_MAX MAX_PATH
 #elif __APPLE__
 #define VERSION_PATTERN "%d.%d"
-#define FILE_PATTERN "Python.framework/Versions/Current/lib/libpython%s.dylib"
+#define FILE_PATTERN "Python.framework/Versions/%s/lib/libpython%s.dylib"
 #endif
 
 #define PY_MAJOR_VERSION_MAX 3
@@ -71,7 +71,7 @@ bool import_python(const char *python_path, python_version_t *python_version)
 
 	struct dstr temp;
 	dstr_init(&temp);
-	dstr_printf(&temp, FILE_PATTERN, cur_version);
+	dstr_printf(&temp, FILE_PATTERN, cur_version, cur_version);
 
 	int minor_version = PY_MINOR_VERSION_MAX;
 	do {

+ 2 - 1
shared/obs-scripting/obs-scripting-python.c

@@ -1607,7 +1607,8 @@ bool obs_scripting_load_python(const char *python_path)
 	if (python_path && *python_path) {
 #ifdef __APPLE__
 		char temp[PATH_MAX];
-		snprintf(temp, sizeof(temp), "%s/Python.framework/Versions/Current", python_path);
+		snprintf(temp, sizeof(temp), "%s/Python.framework/Versions/%i.%i", python_path, python_version.major,
+			 python_version.minor);
 		os_utf8_to_wcs(temp, 0, home_path, PATH_MAX);
 		Py_SetPythonHome(home_path);
 #else