I am getting maya crash with CExtensionAttrHelper in NodeInitializer method.
What can I do to debug this situation ?
Following are details...
Code:
// voxelizer_mtoa_translator derives from CShapeTranslator void voxelizer_mtoa_translator::NodeInitializer(CAbTranslator context) { CExtensionAttrHelper helper(context.maya, "Voxelizer"); // Voxelizer is a name of my mayaShapeNode //CShapeTranslator::MakeCommonAttributes(helper); //uncommenting this line crashes maya }
Stack Trace:
API error detected in plugins\mtoa\Main.cpp at line 631 : (kFailure): Unexpected Internal Failure Stack trace: ntdll.dll!RtlWalkFrameChain ntdll.dll!KiUserExceptionDispatcher mtoa_api.dll!CLightTranslator::operator= mtoa_api.dll!CLightTranslator::operator= mtoa_api.dll!CBaseAttrHelper::MakeInput mtoa_api.dll!CBaseAttrHelper::MakeInput mtoa_api.dll!CShapeTranslator::MakeCommonAttributes Voxelizer_mtoa_translator.dll!CExtensionAttrHelper::GetMayaNodeTypeName mtoa_api.dll!CExtensionsManager::RegisterExtension mtoa_api.dll!CExtensionsManager::RegisterExtensions mtoa.mll!initializePlugin mtoa.mll!initializePlugin OpenMaya.dll!Tplugin::primaryLoad OpenMaya.dll!Tplugin::load OpenMaya.dll!TpluginPref::~TpluginPref OpenMaya.dll!TpluginPref::~TpluginPref OpenMaya.dll!TpluginPref::~TpluginPref CommandEngine.dll!TpythonInterpreter::dispatchMayaCommand python27.dll!PyCFunction_Call python27.dll!PyEval_GetFuncDesc python27.dll!PyEval_EvalFrameEx python27.dll!PyEval_GetFuncDesc python27.dll!PyEval_GetFuncDesc python27.dll!PyEval_EvalFrameEx python27.dll!PyEval_GetFuncDesc python27.dll!PyEval_GetFuncDesc python27.dll!PyEval_EvalFrameEx python27.dll!PyEval_EvalCodeEx python27.dll!PyEval_EvalCode CommandEngine.dll!TpythonInterpreter::executeCommand ExtensionLayer.dll!TidleScriptAction::doIdleAction ExtensionLayer.dll!TidleAction::preDoIdleAction ExtensionLayer.dll!TarrayTdeviceHandlerPtr::size ExtensionLayer.dll!TeventHandler::doIdles ExtensionLayer.dll!TidleLicenseAction::doIdleAction Qt5Core.dll!QObject::event Qt5Widgets.dll!QApplicationPrivate::notify_helper Qt5Widgets.dll!QApplication::notify ExtensionLayer.dll!TwindowManager::windowPreferencesAreEnabled Qt5Core.dll!QCoreApplication::notifyInternal2
This is under windows 10, build with MSVC 2017 Community edition, v15.5.3
MtoA 2.1.0
I think the reason is MSVC version I used...
I build minimal working code with MSVC v11 2012 and it works fine.
With MSVC v15 2017 it crashes.
Which means I'm in trouble now, because I'm not sure OpenVDB want's to build with older compiler.
What MSVC version is supported for MtoA 2.1.0 ?
It seems the highest version that does not crash is MSVC v12 2013
However to use OpenVDB I need at least MSVC v14 2015.
Any ideas how to handle this?