[ODE] Re: Memory leak from dBodySetPosition()?
Geoff Carlton
gcarlton at iinet.net.au
Mon May 2 10:05:35 MST 2005
Opcode needs to be changed so that Faces.Empty can be called. It only
crops up for ray/trimesh collisions, so that may be why you aren't
seeing it. Or perhaps it no longer leaks, I'm not sure. Anyway, the
change is:
OPC_RayCollider.h:
class OPCODE_API CollisionFaces : private Container
...
inline_ void Empty()
{ Container::Empty(); }
Cheers,
Geoff
J. Perkins wrote:
>On 4/25/05, Geoff Carlton <gcarlton at iinet.net.au> wrote:
>
>
>>Trimesh has some static caches that need to be cleared. Try adding a
>>function in trimesh.cpp that is called during dCloseODE.
>>
>>void dClearTrimeshCaches(void)
>>{
>> dxTriMesh::defaultSphereCache.TouchedPrimitives.Empty();
>> dxTriMesh::defaultBoxCache.TouchedPrimitives.Empty();
>> dxTriMesh::defaultCCylinderCache.TouchedPrimitives.Empty();
>> dxTriMesh::Faces.Empty();
>>}
>>
>>
>
>That did it, thanks for the assist. With one change: you can't call
>Faces.Empty() because the inheritance from Container is private. I
>don't know if this is an issue. Even without that line my memory
>leak report is now clean.
>
>Thanks again,
>Jason
>
>_______________________________________________
>ODE mailing list
>ODE at q12.org
>http://q12.org/mailman/listinfo/ode
>
>
>
>
>
More information about the ODE
mailing list