Hi, I also had a crash with a similar backtrace (which includes Manta::Mesh::~Mesh()) using PV 3.98.0 and Manta r2541 (the latest revision as of today) when I tried changing a display property of a Manta view (displaying a non-OpenFOAM dataset).
The problem looks like that vtkMantaPolyDataMapper allocates a series of Manta objects as an array whereas Manta::Mesh::~Mesh() tries to delete them individually. Thus the attached patch fixed the problem for me. I filed a bug with the patch attached: http://paraview.org/Bug/view.php?id=13760 Takuya OSHIMA, Ph.D. Faculty of Engineering, Niigata University 8050 Ikarashi-Ninocho, Nishi-ku, Niigata, 950-2181, JAPAN From: David E DeMarle <dave.dema...@kitware.com> Subject: Re: [Paraview] Paraview and Manta View Date: Wed, 24 Oct 2012 09:56:54 -0400 > Can you send me the foam data off list? > > David E DeMarle > Kitware, Inc. > R&D Engineer > 21 Corporate Drive > Clifton Park, NY 12065-8662 > Phone: 518-881-4909 > > > On Tue, Oct 23, 2012 at 3:47 PM, Jim Knopf <jknopf2...@googlemail.com> wrote: >> Hi There! >> >> right now i'm playing around with paraview and manta ray tracer. I got Manta >> compile on my linux machine and got paraview compile with the manta plug-in. >> >> Now I'm trying to use the manta view in paraview with vtk data derived from >> an OpenFoam case. The result is a crash that I don't understand: >> >> 7f08fff2f000-7f090366b000 rw-p 00000000 00:00 0 >> 7f090366b000-7f090366c000 rw-s 122f42000 00:05 7478 >> /dev/dri/card0 >> 7f090366d000-7f090366e000 rw-s 122f40000 00:05 7478 >> /dev/dri/card0 >> 7f090372f000-7f090373f000 rw-s 1150e2000 00:05 7478 >> /dev/dri/card0 >> 7f090388f000-7f09038a1000 rw-s 00000000 00:04 9044062 >> /SYSV00000000 (deleted) >> 7f0903981000-7f0903a81000 rw-s 11c594000 00:05 7478 >> /dev/dri/card0 >> 7f0903bc1000-7f0904343000 rw-s 00000000 00:04 8978494 >> /SYSV00000000 (deleted) >> 7f0904343000-7f0904344000 rw-s 1278e3000 00:05 7478 >> /dev/dri/card0 >> 7f0904344000-7f0904345000 rw-s 127e34000 00:05 7478 >> /dev/dri/card0 >> 7f09045ba000-7f09046b8000 rw-s 00000000 00:04 9568362 >> /SYSV00000000 (deleted) >> 7f09046b8000-7f09046dd000 rw-s 00000000 00:04 9470057 >> /SYSV00000000 (deleted) >> 7f09046dd000-7f0904708000 rw-s 00000000 00:04 9437288 >> /SYSV00000000 (deleted) >> 7f0904708000-7f0904709000 rw-s 11d082000 00:05 7478 >> /dev/dri/card0 >> 7f0904709000-7f090470a000 rw-s 11d081000 00:05 7478 >> /dev/dri/card0 >> 7f090470a000-7f090470b000 rw-s 11d080000 00:05 7478 >> /dev/dri/card0Thread "RTRT Worker 0"(pid 23818 >> Backtrace: >> 1. /usr/local/lib/libManta_Core.so(+0x412d0) [0x7f08eb3272d0] >> 2. /lib/x86_64-linux-gnu/libc.so.6(+0x364a0) [0x7f092cb534a0] >> 3. /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x35) [0x7f092cb53425] >> 4. /lib/x86_64-linux-gnu/libc.so.6(abort+0x17b) [0x7f092cb56b8b] >> 5. /lib/x86_64-linux-gnu/libc.so.6(+0x7439e) [0x7f092cb9139e] >> 6. /lib/x86_64-linux-gnu/libc.so.6(+0x7eb96) [0x7f092cb9bb96] >> 7. /usr/local/lib/libManta_Model.so >> in Manta::Mesh::~Mesh() >> 8. /usr/local/lib/libManta_Model.so >> in Manta::Mesh::~Mesh() >> 9. /usr/local/lib/libManta_Model.so >> in Manta::Group::shrinkTo(unsigned long, bool) >> a. >> /home/otti/OpenFOAM/ThirdParty-2.1.1/platforms/linux64Gcc/paraview-3.12.0/lib/paraview-3.12/libvtkManta.so >> in vtkMantaActorThreadCache::FreeMantaResources() >> b. >> /home/otti/OpenFOAM/ThirdParty-2.1.1/platforms/linux64Gcc/paraview-3.12.0/lib/paraview-3.12/libvtkManta.so >> in Manta::CallbackTransaction::apply() >> c. /usr/local/lib/libManta_Engine.so >> in Manta::RTRT::postTransactions(bool&) >> d. /usr/local/lib/libManta_Engine.so >> in Manta::RTRT::internalRenderLoop(int, bool) >> e. /usr/local/lib/libManta_Core.so >> in Manta::Thread::run_body() >> f. /usr/local/lib/libManta_Core.so(+0x44728) [0x7f08eb32a728] >> 10. /lib/x86_64-linux-gnu/libpthread.so.0(+0x7e9a) [0x7f0929dd3e9a] >> 11. /lib/x86_64-linux-gnu/libc.so.6(clone+0x6d) [0x7f092cc10cbd] >> 139677424109440: main (state = blocking on semaphore, >> SyncDisplay::_frameready) >> 139676715988736: RTRT Worker 0 (state = running) >> >> Abort signalled by pid: 23818 >> Occured for thread: "RTRT Worker 0" >> >> ---------------------------- >> Has anyone any idea? Running Manta standalone works >> >> Thanks and Greetings >> Jim >> _______________________________________________ >> Powered by www.kitware.com >> >> Visit other Kitware open-source projects at >> http://www.kitware.com/opensource/opensource.html >> >> Please keep messages on-topic and check the ParaView Wiki at: >> http://paraview.org/Wiki/ParaView >> >> Follow this link to subscribe/unsubscribe: >> http://www.paraview.org/mailman/listinfo/paraview >> >
diff --git a/Plugins/MantaView/VTK/vtkMantaPolyDataMapper.cxx b/Plugins/MantaView/VTK/vtkMantaPolyDataMapper.cxx index 11a258d..804d8cc 100644 --- a/Plugins/MantaView/VTK/vtkMantaPolyDataMapper.cxx +++ b/Plugins/MantaView/VTK/vtkMantaPolyDataMapper.cxx @@ -429,11 +429,9 @@ void vtkMantaPolyDataMapper::DrawPolygons(vtkPolyData *polys, } //cerr << "polygons: # of triangles = " << total_triangles << endl; - // TODO: memory leak, wald_triangle is not deleted - Manta::WaldTriangle *wald_triangle = new Manta::WaldTriangle[total_triangles]; for ( int i = 0; i < total_triangles; i ++ ) { - mesh->addTriangle( &wald_triangle[i] ); + mesh->addTriangle( new Manta::WaldTriangle ); } }//VTK_SURFACE break; @@ -650,11 +648,9 @@ void vtkMantaPolyDataMapper::DrawTStrips(vtkPolyData *polys, //cerr << "strips: # of triangles = " << total_triangles << endl; - // TODO: memory leak, wald_triangle is not deleted - Manta::WaldTriangle *wald_triangle = new Manta::WaldTriangle[total_triangles]; for ( int i = 0; i < total_triangles; i++ ) { - mesh->addTriangle( &wald_triangle[i] ); + mesh->addTriangle( new Manta::WaldTriangle ); } } }
_______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the ParaView Wiki at: http://paraview.org/Wiki/ParaView Follow this link to subscribe/unsubscribe: http://www.paraview.org/mailman/listinfo/paraview