[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [41781] trunk/blender/intern/itasc/kdl: Fix #29048: iTaSC solver crash on certain compilers/platforms, due to memory
Brecht Van Lommel
brechtvanlommel at pandora.be
Sun Nov 13 13:25:14 CET 2011
Revision: 41781
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=41781
Author: blendix
Date: 2011-11-13 12:25:14 +0000 (Sun, 13 Nov 2011)
Log Message:
-----------
Fix #29048: iTaSC solver crash on certain compilers/platforms, due to memory
alignment issues with Eigen. Patch by Tobias Oelgarte.
Modified Paths:
--------------
trunk/blender/intern/itasc/kdl/chain.hpp
trunk/blender/intern/itasc/kdl/tree.hpp
Modified: trunk/blender/intern/itasc/kdl/chain.hpp
===================================================================
--- trunk/blender/intern/itasc/kdl/chain.hpp 2011-11-13 12:17:27 UTC (rev 41780)
+++ trunk/blender/intern/itasc/kdl/chain.hpp 2011-11-13 12:25:14 UTC (rev 41781)
@@ -34,7 +34,8 @@
*/
class Chain {
private:
- std::vector<Segment> segments;
+ // Eigen allocator is needed for alignment of Eigen data types
+ std::vector<Segment, Eigen::aligned_allocator<Segment> > segments;
unsigned int nrOfJoints;
unsigned int nrOfSegments;
public:
Modified: trunk/blender/intern/itasc/kdl/tree.hpp
===================================================================
--- trunk/blender/intern/itasc/kdl/tree.hpp 2011-11-13 12:17:27 UTC (rev 41780)
+++ trunk/blender/intern/itasc/kdl/tree.hpp 2011-11-13 12:25:14 UTC (rev 41781)
@@ -27,12 +27,14 @@
#include <string>
#include <map>
+#include <Eigen/Core>
namespace KDL
{
//Forward declaration
class TreeElement;
- typedef std::map<std::string,TreeElement> SegmentMap;
+ // Eigen allocator is needed for alignment of Eigen data types
+ typedef std::map<std::string,TreeElement, std::less<std::string>, Eigen::aligned_allocator<std::pair<std::string, TreeElement> > > SegmentMap;
class TreeElement
{
More information about the Bf-blender-cvs
mailing list