Yup, it looks like all of BLI_smallhash is in stubs.c. I'm not sure why though, nothing from BLI should be a bad level call...
--Mitchell On Sun, May 12, 2013 at 7:23 PM, Mitchell Stokes <[email protected]>wrote: > The Blenderplayer stopped crashing with the Edge Split modifier, but it > seems to be stuck in an infinite loop. Here is some example output from gdb: > > 0x00000000011c4e8c in bmesh_vert_separate (bm=0x291add8, v=0x2941c58, > r_vout=0x0, r_vout_len=0x0) at > /home/mitchell/blender-dev/trunk/blender/source/blender/bmesh/intern/bmesh_core.c:1931 > 1931 } while ((e = STACK_POP(stack))); > (gdb) bt > #0 0x00000000011c4e8c in bmesh_vert_separate (bm=0x291add8, v=0x2941c58, > r_vout=0x0, r_vout_len=0x0) at > /home/mitchell/blender-dev/trunk/blender/source/blender/bmesh/intern/bmesh_core.c:1931 > #1 0x0000000001243f91 in BM_mesh_edgesplit (bm=0x291add8, > use_verts=false, tag_only=true) at > /home/mitchell/blender-dev/trunk/blender/source/blender/bmesh/tools/bmesh_edgesplit.c:162 > #2 0x0000000000f317e8 in doEdgeSplit (dm=0x291ec08, emd=0x23ddac8, > UNUSED_ob=0x23dd358) at > /home/mitchell/blender-dev/trunk/blender/source/blender/modifiers/intern/MOD_edgesplit.c:93 > #3 0x0000000000f318b2 in edgesplitModifier_do (emd=0x23ddac8, > ob=0x23dd358, dm=0x291ec08) at > /home/mitchell/blender-dev/trunk/blender/source/blender/modifiers/intern/MOD_edgesplit.c:127 > #4 0x0000000000f318ea in applyModifier (md=0x23ddac8, ob=0x23dd358, > derivedData=0x291ec08, UNUSED_flag=(unknown: 0)) at > /home/mitchell/blender-dev/trunk/blender/source/blender/modifiers/intern/MOD_edgesplit.c:136 > #5 0x0000000000acac75 in mesh_calc_modifiers (scene=0x23dad38, > ob=0x23dd358, inputVertexCos=0x0, deform_r=0x0, final_r=0x7fffffffcb68, > useRenderParams=0, useDeform=-1, needMapping=0, dataMask=532694146175, > index=-1, useCache=0, > build_shapekey_layers=0) at > /home/mitchell/blender-dev/trunk/blender/source/blender/blenkernel/intern/DerivedMesh.c:1670 > #6 0x0000000000accec1 in mesh_create_derived_no_virtual (scene=0x23dad38, > ob=0x23dd358, vertCos=0x0, dataMask=532694146175) at > /home/mitchell/blender-dev/trunk/blender/source/blender/blenkernel/intern/DerivedMesh.c:2370 > #7 0x0000000000d23cb1 in BL_ModifierDeformer::Update (this=0x2919b90) at > /home/mitchell/blender-dev/trunk/blender/source/gameengine/Converter/BL_ModifierDeformer.cpp:172 > #8 0x0000000000d23e7d in BL_ModifierDeformer::Apply (this=0x2919b90, > mat=0x0) at > /home/mitchell/blender-dev/trunk/blender/source/gameengine/Converter/BL_ModifierDeformer.cpp:206 > #9 0x0000000000d24014 in BL_SkinDeformer::UpdateBuckets (this=0x2919b90) > at > /home/mitchell/blender-dev/trunk/blender/source/gameengine/Converter/BL_SkinDeformer.h:82 > #10 0x0000000000d0f338 in BL_CreateGraphicObjectNew (gameobj=0x27f4d60, > localAabbMin=..., localAabbMax=..., kxscene=0x26a86d0, isActive=true, > physics_engine=UseBullet) > at > /home/mitchell/blender-dev/trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp:1568 > #11 0x0000000000d132ce in BL_ConvertBlenderObjects (maggie=0x2397238, > kxscene=0x26a86d0, ketsjiEngine=0x26ac450, physics_engine=UseBullet, > rendertools=0x2624a10, canvas=0x26216b0, converter=0x26ad7e0, > alwaysUseExpandFraming=false, > libloading=false) at > /home/mitchell/blender-dev/trunk/blender/source/gameengine/Converter/BL_BlenderDataConversion.cpp:2714 > #12 0x0000000000d329d1 in KX_BlenderSceneConverter::ConvertScene > (this=0x26ad7e0, destinationscene=0x26a86d0, rendertools=0x2624a10, > canvas=0x26216b0, libloading=false) > at > /home/mitchell/blender-dev/trunk/blender/source/gameengine/Converter/KX_BlenderSceneConverter.cpp:388 > #13 0x0000000000929acd in GPG_Application::startEngine > (this=0x7fffffffd5e0) at > /home/mitchell/blender-dev/trunk/blender/source/gameengine/GamePlayer/ghost/GPG_Application.cpp:739 > #14 0x000000000092893d in GPG_Application::startWindow > (this=0x7fffffffd5e0, title=..., windowLeft=100, windowTop=100, > windowWidth=640, windowHeight=480, stereoVisual=false, stereoMode=1, > samples=0) > at > /home/mitchell/blender-dev/trunk/blender/source/gameengine/GamePlayer/ghost/GPG_Application.cpp:339 > #15 0x0000000000926985 in main (argc=2, argv=0x7fffffffe608) at > /home/mitchell/blender-dev/trunk/blender/source/gameengine/GamePlayer/ghost/GPG_ghost.cpp:983 > > > This happens when I put an Edge Split modifier on the default cube and run > it through the Blenderplayer. I'm guessing something isn't being > initialized for the Blenderplayer (or a bad level call is being done that's > returning 0). > > --Mitchell > > > On Sun, May 12, 2013 at 7:11 PM, Campbell Barton <[email protected]>wrote: > >> Revision: 56736 >> >> http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=56736 >> Author: campbellbarton >> Date: 2013-05-13 02:10:59 +0000 (Mon, 13 May 2013) >> Log Message: >> ----------- >> add missing STACK_INIT, also quiet float <> double conversion warnings. >> >> Modified Paths: >> -------------- >> trunk/blender/source/blender/blenkernel/intern/tracking.c >> trunk/blender/source/blender/bmesh/operators/bmo_utils.c >> >> Modified: trunk/blender/source/blender/blenkernel/intern/tracking.c >> =================================================================== >> --- trunk/blender/source/blender/blenkernel/intern/tracking.c >> 2013-05-13 02:01:35 UTC (rev 56735) >> +++ trunk/blender/source/blender/blenkernel/intern/tracking.c >> 2013-05-13 02:10:59 UTC (rev 56736) >> @@ -388,17 +388,17 @@ >> /* Convert the corners into search space coordinates. */ >> for (i = 0; i < 4; i++) { >> marker_unified_to_search_pixel(frame_width, frame_height, >> marker, marker->pattern_corners[i], pixel_coords); >> - search_pixel_x[i] = pixel_coords[0] - 0.5; >> - search_pixel_y[i] = pixel_coords[1] - 0.5; >> + search_pixel_x[i] = pixel_coords[0] - 0.5f; >> + search_pixel_y[i] = pixel_coords[1] - 0.5f; >> } >> >> /* Convert the center position (aka "pos"); this is the origin */ >> - unified_coords[0] = 0.0; >> - unified_coords[1] = 0.0; >> + unified_coords[0] = 0.0f; >> + unified_coords[1] = 0.0f; >> marker_unified_to_search_pixel(frame_width, frame_height, marker, >> unified_coords, pixel_coords); >> >> - search_pixel_x[4] = pixel_coords[0] - 0.5; >> - search_pixel_y[4] = pixel_coords[1] - 0.5; >> + search_pixel_x[4] = pixel_coords[0] - 0.5f; >> + search_pixel_y[4] = pixel_coords[1] - 0.5f; >> } >> >> /* Inverse of above. */ >> >> Modified: trunk/blender/source/blender/bmesh/operators/bmo_utils.c >> =================================================================== >> --- trunk/blender/source/blender/bmesh/operators/bmo_utils.c >> 2013-05-13 02:01:35 UTC (rev 56735) >> +++ trunk/blender/source/blender/bmesh/operators/bmo_utils.c >> 2013-05-13 02:10:59 UTC (rev 56736) >> @@ -359,6 +359,7 @@ >> * stack (if we use simple function recursion, we'd end up >> overloading >> * the stack on large meshes). */ >> >> + STACK_INIT(fstack); >> STACK_PUSH(fstack, startf); >> BMO_elem_flag_enable(bm, startf, FACE_VIS); >> >> >> _______________________________________________ >> Bf-blender-cvs mailing list >> [email protected] >> http://lists.blender.org/mailman/listinfo/bf-blender-cvs >> > > _______________________________________________ Bf-committers mailing list [email protected] http://lists.blender.org/mailman/listinfo/bf-committers
