From 2d868ec724f5001e99b46e443096e59b1d5ff191 Mon Sep 17 00:00:00 2001 From: Paul Golter Date: Thu, 22 Jul 2021 16:43:43 +0200 Subject: [PATCH] Disable Strict Pointer Mode in Blender Asset Tracer Disable BAT's Strict Pointer Mode to work around issues with dangling pointers in the Blender Animation Studio files. These seem to be caused by not-perfectly-resynced library overrides. Ignoring those pointers seems to cause less problems than crashing on them. --- CHANGELOG.md | 2 ++ blender_cloud/flamenco/__init__.py | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1d445f8..7cd40f8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ ## Version 1.20 (2021-07-22) - Bump blender-asset-tracer version 1.3.1 -> 1.5.1. +- Blender-asset-tracer "Strict Pointer Mode" disabled, to avoid issues with + not-entirely-synced library overrides. ## Version 1.19 (2021-02-23) diff --git a/blender_cloud/flamenco/__init__.py b/blender_cloud/flamenco/__init__.py index 088761a..3adfa10 100644 --- a/blender_cloud/flamenco/__init__.py +++ b/blender_cloud/flamenco/__init__.py @@ -54,6 +54,8 @@ from bpy.props import ( from .. import async_loop, pillar, project_specific, utils from ..utils import pyside_cache, redraw +import blender_asset_tracer.blendfile + log = logging.getLogger(__name__) # Global flag used to determine whether panels etc. can be drawn. @@ -649,6 +651,12 @@ class FLAMENCO_OT_render( self.log.debug("projdir: %s", projdir) + # Due to issues with library overrides and unsynced pointers, it's quite + # common for the Blender Animation Studio to get crashes of BAT. To avoid + # these, Strict Pointer Mode is disabled. + + blender_asset_tracer.blendfile.set_strict_pointer_mode(False) + if is_shaman_url(prefs.flamenco_job_file_path): endpoint, _ = bat_interface.parse_shaman_endpoint( prefs.flamenco_job_file_path