[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [57052] trunk/blender/source/gameengine/ Converter/BL_BlenderDataConversion.cpp: Fix #35480: object without material crash blender when starting game engine
Sergey Sharybin
sergey.vfx at gmail.com
Mon May 27 17:13:14 CEST 2013
Revision: 57052
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=57052
Author: nazgul
Date: 2013-05-27 15:13:14 +0000 (Mon, 27 May 2013)
Log Message:
-----------
Fix #35480: object without material crash blender when starting game engine
Was a missing NULL-pointer check. No idea why it took so long to figure
issue out -- apparently there was no crash in linux for me and msvc
didn't show any backtrace :S
Also corrected weirdo way of bit flag check which was:
!ma->mode & MA_FACETEXTURE
better do !(ma->mode & MA_FACETEXTURE) since ! is a logic NOT.
Modified Paths:
--------------
trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp
Modified: trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp
===================================================================
--- trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp 2013-05-27 13:22:55 UTC (rev 57051)
+++ trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp 2013-05-27 15:13:14 UTC (rev 57052)
@@ -905,7 +905,7 @@
ConvertMaterial(bl_mat, ma, tface, tfaceName, mface, mcol,
converter->GetGLSLMaterials());
- if ((!ma->mode & MA_FACETEXTURE))
+ if (ma && (ma->mode & MA_FACETEXTURE) == 0)
converter->CacheBlenderMaterial(ma, bl_mat);
}
@@ -921,7 +921,7 @@
kx_blmat->Initialize(scene, bl_mat, (ma?&ma->game:NULL), lightlayer);
polymat = static_cast<RAS_IPolyMaterial*>(kx_blmat);
- if ((!ma->mode & MA_FACETEXTURE))
+ if (ma && (ma->mode & MA_FACETEXTURE) == 0)
converter->CachePolyMaterial(ma, polymat);
}
}
More information about the Bf-blender-cvs
mailing list