[Bf-committers] Newwest CVS-Snapshot: Crashing while Boolean-Ops.

Meino Christian Cramer bf-committers@blender.org
Fri, 05 Dec 2003 14:23:01 +0100 (CET)


Hi,

 I got a segmentation fault while doing a "difference" boolean operation
 between two meshes. One mesh was a UV-Sphere, the other one was a 
 Diamond shape. Both were checked beforehand to have correct face
 normals. 

 I checked it with gdb and found:

 (gdb) backtrace
#0  0x0832efb4 in BSP_MVertex::OpenTag() const ()
#1  0x0832e75b in BSP_MeshFragment::ClassifyPolygon(MT_Plane3 const&, BSP_MFace const&, __gnu_cxx::__normal_iterator<BSP_MVertex const*, std::vector<BSP_MVertex, std::allocator<BSP_MVertex> > >, std::vector<CTR_TaggedIndex<24, 16777215>, std::allocator<CTR_TaggedIndex<24, 16777215> > >&) ()
#2  0x0832e8ea in BSP_MeshFragment::Classify(MT_Plane3 const&, BSP_MeshFragment*, BSP_MeshFragment*, BSP_MeshFragment*, std::vector<CTR_TaggedIndex<24, 16777215>, std::allocator<CTR_TaggedIndex<24, 16777215> > >&, std::vector<CTR_TaggedIndex<24, 16777215>, std::allocator<CTR_TaggedIndex<24, 16777215> > >&) ()
#3  0x0832ba35 in BSP_CSGNCMeshSplitter::Split(MT_Plane3 const&, BSP_MeshFragment*, BSP_MeshFragment*, BSP_MeshFragment*, BSP_MeshFragment*, BSP_MeshFragment*)
    ()
#4  0x083302d5 in BSP_FragNode::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#5  0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#6  0x0833030c in BSP_FragNode::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#7  0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#8  0x0833030c in BSP_FragNode::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#9  0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#10 0x0833030c in BSP_FragNode::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#11 0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#12 0x0833030c in BSP_FragNode::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#13 0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#14 0x0833030c in BSP_FragNode::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#15 0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#16 0x0833030c in BSP_FragNode::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#17 0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#18 0x0833030c in BSP_FragNode::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#19 0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#20 0x0833030c in BSP_FragNode::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#21 0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#22 0x0833030c in BSP_FragNode::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#23 0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#24 0x0833030c in BSP_FragNode::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#25 0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#26 0x0833030c in BSP_FragNode::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#27 0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#28 0x0833030c in BSP_FragNode::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#29 0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#30 0x0833030c in BSP_FragNode::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()
#31 0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&) ()

...(many,many,many lines like those above...,...,...

#19337 0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&)
    ()
#19338 0x0833030c in BSP_FragNode::Build(BSP_MeshFragment*, BSP_CSGISplitter&)
    ()
#19339 0x0832e2da in BSP_FragTree::Build(BSP_MeshFragment*, BSP_CSGISplitter&)
    ()
#19340 0x0832daeb in BSP_FragTree::New(BSP_CSGMesh*, BSP_CSGISplitter&) ()
#19341 0x0831adcd in BSP_CSGHelper::ComputeOp(BSP_CSGMesh*, BSP_CSGMesh*, BSP_OperationType, BSP_CSGMesh&, int (*)(void*, void*, void*, float)) ()
#19342 0x0831a112 in CSG_PerformBooleanOperation ()
#19343 0x082952da in NewBooleanMesh ()
#19344 0x08221561 in special_editmenu ()
#19345 0x080db79f in winqreadview3dspace ()
#19346 0x08201521 in scrarea_do_winhandle ()
#19347 0x080d9ed2 in scrarea_dispatch_events ()
#19348 0x080d8b0d in screen_dispatch_events ()
#19349 0x080d37b4 in screenmain ()
#19350 0x08094ffb in main ()

Keep hacking!
 Meino