[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:29:31 CEST 2013


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