[Bf-blender-cvs] [a8dc5b2] master: Alternative fix for T38753, use existing __file__ in namespace
Tamito Kajiyama
noreply at git.blender.org
Wed Mar 5 17:31:40 CET 2014
Commit: a8dc5b274b5105be96694a9ea1a70871b5a7183f
Author: Tamito Kajiyama
Date: Thu Mar 6 03:27:14 2014 +1100
https://developer.blender.org/rBa8dc5b274b5105be96694a9ea1a70871b5a7183f
Alternative fix for T38753, use existing __file__ in namespace
===================================================================
M source/blender/python/intern/bpy_interface.c
===================================================================
diff --git a/source/blender/python/intern/bpy_interface.c b/source/blender/python/intern/bpy_interface.c
index cf5bf3a..93bced3 100644
--- a/source/blender/python/intern/bpy_interface.c
+++ b/source/blender/python/intern/bpy_interface.c
@@ -496,19 +496,11 @@ static int python_script_exec(bContext *C, const char *fn, struct Text *text,
* incompatible'.
* So now we load the script file data to a buffer */
{
- PyObject *py_dict_local, *fn_py;
- const char *pystring = "with open(fn, 'r') as f: exec(f.read())";
+ const char *pystring = "with open(__file__, 'r') as f: exec(f.read())";
fclose(fp);
- py_dict_local = PyDict_New();
- fn_py = PyC_UnicodeFromByte(fn);
- PyDict_SetItemString(py_dict_local, "fn", fn_py);
- Py_DECREF(fn_py);
-
- py_result = PyRun_String(pystring, Py_file_input, py_dict, py_dict_local);
-
- Py_DECREF(py_dict_local);
+ py_result = PyRun_String(pystring, Py_file_input, py_dict, py_dict);
}
#else
py_result = PyRun_File(fp, fn, Py_file_input, py_dict, py_dict);
More information about the Bf-blender-cvs
mailing list