XPlane2Blender icon indicating copy to clipboard operation
XPlane2Blender copied to clipboard

run.py and tests.py replace rather than update environment

Open ian-m-carr opened this issue 2 years ago • 2 comments

As far as I can see the line in run.py and tests.py which reads: enviro={"BLENDER_USER_SCRIPTS": os.path.dirname(os.path.realpath(__file__))} creates a new environment with a single variable in it.

in my case blender then fails to load with:

blender --addons io_xplane2blender --factory-startup --
found bundled python: D:\tools\blender-2.83.20-windows-x64\2.83\python
Fatal Python error: _Py_HashRandomization_Init: failed to get random numbers to initialize Python

replacing this line in both file with:

enviro = os.environ.copy()
enviro["BLENDER_USER_SCRIPTS"] = os.path.dirname(os.path.realpath(__file__))

Copies the existing environment and appends the variable to it.

In my case this then allows blender to run and the unit tests to begin executing

ian-m-carr avatar Oct 06 '22 16:10 ian-m-carr

Hi -- that looks like a sane fix - do you already have a patch I can take as a pull request?

bsupnik avatar Dec 20 '22 13:12 bsupnik

I can see what I can come up with, currently on my feat_importer branch: run.py and tests.py re-use existing evironment vars and can now successfully run blender on my Windows setup: be25a64e690ed09c2eb3b2f114c56811be6d6e11

Patch attached

patch.diff.txt

ian-m-carr avatar Dec 20 '22 14:12 ian-m-carr