[Bf-committers] [Bf-blender-cvs] SVN commit: /data/svn/bf-blender [56736] trunk/blender/source/blender: add missing STACK_INIT, also quiet float <> double conversion warnings.

Mitchell Stokes mogurijin at gmail.com
Mon May 13 04:50:37 CEST 2013


I think I've got it fixed in r56740.

--Mitchell


On Sun, May 12, 2013 at 7:29 PM, Mitchell Stokes <mogurijin at gmail.com>wrote:

> 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 <mogurijin at gmail.com>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 <ideasman42 at gmail.com>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
>>> Bf-blender-cvs at blender.org
>>> http://lists.blender.org/mailman/listinfo/bf-blender-cvs
>>>
>>
>>
>


More information about the Bf-committers mailing list