[vtkusers] Help with crashes in VTK
Xiaofeng Z
xf10036 at hotmail.com
Tue Sep 6 14:28:05 EDT 2011
I see in some cases, references to vtkSmartPointer's are passed to functions. probably not a good idea.
Xiaofeng From: xf10036 at hotmail.com
To: jonmorra at gmail.com
Date: Tue, 6 Sep 2011 14:24:29 -0400
CC: vtkusers at vtk.org
Subject: Re: [vtkusers] Help with crashes in VTK
1. When the pipeline created in the stack is detroyed, it detroys the output object within the pipeline. By returning a vtkSmartPointer may be a remedy to this (in which case calling Register(0) is a bug), but I'm not sure without checking the document. I tend not to use vtkSmartPointer in straight C++ code since smart pointer tend to complicate things up and clutters the code.
2. Unpredictable failures tend to be thread related, or to a less extend, lack of memory. You mentioned that the crash does not occur in the threaded code. But it is worthwhile to double check.
Xiaofeng
Date: Tue, 6 Sep 2011 10:53:51 -0700
Subject: Re: [vtkusers] Help with crashes in VTK
From: jonmorra at gmail.com
To: xf10036 at hotmail.com
CC: drescherjm at gmail.com; vtkusers at vtk.org
Thanks for the response, I was just wondering1. What this is trying to accomplish?2. If this would explain the behavior that I'm seeing (where it fails unpredictably)?
On Tue, Sep 6, 2011 at 10:50 AM, Xiaofeng Z <xf10036 at hotmail.com> wrote:
Case 3: vtkSmartPointer<vtkPolyData> vtkPipelines::getContoursAtSlice(vtkSmartPointer<vtkImageData> const &binaryImage, int const slice, EOrientation const inOrientation) {
int* extent = binaryImage->GetExtent();
vtkSmartPointer<vtkMarchingSquares> marching = vtkSmartPointer<vtkMarchingSquares>::New(); marching->SetInput(binaryImage);
switch (inOrientation) { case eOrientation_XY: marching->SetImageRange(extent[0], extent[1], extent[2], extent[3], slice, slice); break;
case eOrientation_XZ: marching->SetImageRange(extent[0], extent[1], slice, slice, extent[4], extent[5]); break; case eOrientation_YZ: marching->SetImageRange(slice, slice, extent[2], extent[3], extent[4], extent[5]);
break; } marching->SetValue(0, 0.5);
vtkSmartPointer<vtkStripper> stripper = vtkSmartPointer<vtkStripper>::New(); stripper->SetInputConnection(marching->GetOutputPort());
stripper->Update();
return stripper->GetOutput(); // Crash occurs here as update is called (I'm not sure why it's not on the previous line)}
Add the following before returning: vtkSmartPointer<vtkPolyData> poly = stripper->GetOutput();poly->Register(0);return poly; See if that helps.
Xiaofeng
Date: Tue, 6 Sep 2011 09:54:51 -0700
From: jonmorra at gmail.com
To: drescherjm at gmail.com
CC: vtkusers at vtk.org
Subject: Re: [vtkusers] Help with crashes in VTK
Actually, allow me to clarify this.Qt is 4.7.2 as downloaded from their Qt SDK
vtk, gdcm, and my program are all compiled as Release with Debug info
On Sat, Sep 3, 2011 at 9:06 PM, Jonathan Morra <jonmorra at gmail.com> wrote:
Yes, everything is in release.
On Sep 3, 2011 7:45 PM, "John Drescher" <drescherjm at gmail.com> wrote:
> On Sat, Sep 3, 2011 at 6:17 PM, Jonathan Morra <jonmorra at gmail.com> wrote:
>> I have an application that is being developed and deployed on Windows
>> compiling with Visual Studios 2008 and using Qt 4.7.2. I'm using VTK pulled
>> from git on 8/21/2011. I just started to release my application to end
>> users and they are reporting a lot of crashes. I have set up an automated
>> crash handling reporter so I can see the stacktraces of crashes that happen
>> on users' computers. These are not happening on my machine. Honestly I
>> have no idea what would cause these or how to go about fixing them. My
>> application is using QThreads, but these crashes aren't happening in any
>> threaded code. Can anyone have a look at these VTK stack traces and point
>> me in some kind of direction for fixing these.
>> Thanks
>> PS I have a lot more crashes that are very similar to these.
>> Crash 1 -- Probable cause vtkSmartPointer<vtkImageData> going out of scope
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x056e2458) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018cdf0) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x0e88ee80, void * ptr=0x0eab1848) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x0e88ee80, void * ptr=0x0eab1848, const char * __formal=0x724bccb8)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d458, vtkObjectBase * obj=0x0e88ee80, void * ptr=0x0eab1848,
>> const char * desc=0x724bccb8) Line 1069 C++
>> vtkCommon.dll!vtkGarbageCollectorReport<vtkObjectBase>(vtkGarbageCollector
>> * collector=0x0018d458, vtkObjectBase * & ptr=, const char *
>> desc=0x724bccb8) Line 201 + 0x17 bytes C++
>> vtkCommon.dll!vtkInformation::ReportAsObjectBase(vtkInformationKey *
>> key=0x029b32c0, vtkGarbageCollector * collector=0x0018d458) Line 826 + 0x16
>> bytes C++
>> vtkCommon.dll!vtkInformationKey::ReportAsObjectBase(vtkInformation *
>> info=0x0e88de90, vtkGarbageCollector * collector=0x0018d458) Line 136 C++
>> vtkCommon.dll!vtkInformation::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d458) Line 812 + 0xc bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x056e2340) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018cf3c) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x0e88de90, void * ptr=0x053dfb60) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x0e88de90, void * ptr=0x053dfb60, const char * __formal=0x718c055c)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d458, vtkObjectBase * obj=0x0e88de90, void * ptr=0x053dfb60,
>> const char * desc=0x718c055c) Line 1069 C++
>>
>> vtkCommon.dll!vtkGarbageCollectorReport<vtkInformation>(vtkGarbageCollector
>> * collector=0x0018d458, vtkInformation * & ptr=, const char *
>> desc=0x718c055c) Line 201 + 0x17 bytes C++
>> vtkCommon.dll!vtkInformationVector::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d458) Line 227 + 0x28 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x056e24c8) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018d058) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x0e88fc40, void * ptr=0x0efead98) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x0e88fc40, void * ptr=0x0efead98, const char * __formal=0x724c0f7c)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d458, vtkObjectBase * obj=0x0e88fc40, void * ptr=0x0efead98,
>> const char * desc=0x724c0f7c) Line 1069 C++
>>
>> vtkFiltering.dll!vtkGarbageCollectorReport<vtkInformationVector>(vtkGarbageCollector
>> * collector=0x0018d458, vtkInformationVector * & ptr=, const char *
>> desc=0x724c0f7c) Line 201 + 0x18 bytes C++
>> vtkFiltering.dll!vtkExecutive::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d458) Line 303 + 0x25 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x056e2500) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018d174) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x056f9078, void * ptr=0x0e451eac) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x056f9078, void * ptr=0x0e451eac, const char * __formal=0x724c0cac)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d458, vtkObjectBase * obj=0x056f9078, void * ptr=0x0e451eac,
>> const char * desc=0x724c0cac) Line 1069 C++
>> vtkCommon.dll!vtkGarbageCollectorReport<vtkObjectBase>(vtkGarbageCollector
>> * collector=0x0018d458, vtkObjectBase * & ptr=, const char *
>> desc=0x724c0cac) Line 201 + 0x17 bytes C++
>> vtkCommon.dll!vtkSmartPointerBase::Report(vtkGarbageCollector *
>> collector=0x0018d458, const char * desc=0x724c0cac) Line 96 + 0x10 bytes
>> C++
>> vtkFiltering.dll!vtkInformationExecutivePortKey::Report(vtkInformation *
>> info=0x0e88f998, vtkGarbageCollector * collector=0x0018d458) Line 157 +
>> 0x17 bytes C++
>> vtkCommon.dll!vtkInformation::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d458) Line 812 + 0xc bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x056e2650) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018d2b8) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x0e88f998, void * ptr=0x02ab9db4) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x0e88f998, void * ptr=0x02ab9db4, const char * __formal=0x724bd504)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d458, vtkObjectBase * obj=0x0e88f998, void * ptr=0x02ab9db4,
>> const char * desc=0x724bd504) Line 1069 C++
>>
>> vtkFiltering.dll!vtkGarbageCollectorReport<vtkInformation>(vtkGarbageCollector
>> * collector=0x0018d458, vtkInformation * & ptr=, const char *
>> desc=0x724bd504) Line 201 + 0x18 bytes C++
>> vtkFiltering.dll!vtkDataObject::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d458) Line 1022 + 0xf bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x056e2378) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x718b7c7c) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkCharArray::IsA(const char * type=0x00000000) Line 39 +
>> 0x48 bytes C++
>> vtkFiltering.dll!vtkDataObject::UnRegister(vtkObjectBase * o=0x00000000)
>> Line 832 C++
>> vtkCommon.dll!vtkSmartPointerBase::~vtkSmartPointerBase() Line 64 C++
>> Crash 2 -- Probable cause vtkSmartPointer<vtkActor> going out of scope
>>
>> vtkCommon.dll!vtkGarbageCollectorImpl::SubtractReference(vtkGarbageCollectorImpl::Entry
>> * e=0x05466518) Line 795 + 0xd bytes C++
>>
>> vtkCommon.dll!vtkGarbageCollectorImpl::SubtractExternalReferences(vtkGarbageCollectorImpl::ComponentType
>> * c=0x0566ea94) Line 766 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::CollectInternal(vtkObjectBase *
>> root=0x051a8fd8) Line 473 C++
>> vtkCommon.dll!vtkGarbageCollector::Collect(vtkObjectBase *
>> root=0x051a8fd8) Line 907 C++
>> vtkCommon.dll!vtkObjectBase::UnRegisterInternal(vtkObjectBase *
>> __formal=0x05298c38, int check=1) Line 287 + 0x6 bytes C++
>> vtkCommon.dll!vtkObject::UnRegisterInternal(vtkObjectBase * o=0x05298c38,
>> int check=1) Line 885 + 0x11 bytes C++
>> vtkFiltering.dll!vtkAlgorithm::UnRegister(vtkObjectBase * o=0x05298c38)
>> Line 918 C++
>> vtkRendering.dll!vtkActor::~vtkActor() Line 77 C++
>> vtkRendering.dll!vtkOpenGLActor::`vector deleting destructor'() + 0x46
>> bytes C++
>> vtkCommon.dll!vtkObjectBase::UnRegisterInternal(vtkObjectBase *
>> __formal=0x00000000, int check=0) Line 279 + 0xb bytes C++
>> vtkCommon.dll!vtkObject::UnRegisterInternal(vtkObjectBase * o=0x00000000,
>> int check=0) Line 885 + 0x11 bytes C++
>> vtkCommon.dll!vtkObjectBase::UnRegister(vtkObjectBase * o=0x00000000)
>> Line 183 C++
>> vtkCommon.dll!vtkSmartPointerBase::~vtkSmartPointerBase() Line 64 C++
>> Crash 3 -- Occurred during pipeline composed of vtkMarchingSquares and
>> vtkStripper
>> vtkCommon.dll!vtksys::hashtable<std::pair<vtkInformationKey *
>> const,vtkObjectBase *>,vtkInformationKey
>> *,vtkInformationInternals::HashFun,vtksys::hash_select1st<vtkInformationKey
>> * const,vtkObjectBase *>,std::equal_to<vtkInformationKey
>> *>,std::allocator<char> >::find(vtkInformationKey * const &
>> __key=0x029a2f70) Line 729 + 0x14 bytes C++
>> vtkCommon.dll!vtkInformation::GetAsObjectBase(vtkInformationKey *
>> key=0x029a2f70) Line 167 C++
>> vtkCommon.dll!vtkInformationKey::GetAsObjectBase(vtkInformation *
>> info=0x050a38e0) Line 94 C++
>> vtkFiltering.dll!vtkInformationExecutivePortKey::Get(vtkInformation *
>> info=0x050a38e0, vtkExecutive * & executive=0x052aca90, int &
>> port=339042768) Line 91 C++
>>
>> vtkFiltering.dll!vtkDemandDrivenPipeline::ComputePipelineMTime(vtkInformation
>> * request=0x00000000, vtkInformationVector * * inInfoVec=0x052aca90,
>> vtkInformationVector * outInfoVec=0x143561d0, int requestFromOutputPort=0,
>> unsigned long * mtime=0x0018d3f0) Line 137 C++
>>
>> vtkFiltering.dll!vtkDemandDrivenPipeline::ComputePipelineMTime(vtkInformation
>> * request=0x00000000, vtkInformationVector * * inInfoVec=0x05420658,
>> vtkInformationVector * outInfoVec=0x00000000, int requestFromOutputPort=0,
>> unsigned long * mtime=0x0018d430) Line 143 + 0x2c bytes C++
>> vtkFiltering.dll!vtkDemandDrivenPipeline::UpdatePipelineMTime() Line 346
>> + 0x22 bytes C++
>> vtkFiltering.dll!vtkDemandDrivenPipeline::UpdateDataObject() Line 360 +
>> 0xc bytes C++
>> vtkFiltering.dll!vtkDemandDrivenPipeline::UpdateInformation() Line 392 +
>> 0xc bytes C++
>> vtkFiltering.dll!vtkStreamingDemandDrivenPipeline::Update(int port=0)
>> Line 311 + 0xa bytes C++
>> vtkFiltering.dll!vtkExecutive::Update() Line 317 + 0x2 bytes C++
>> Crash 4 --Occurred during pipeline composed of vtkMarchingSquares and
>> vtkStripper
>> 8bcccccc()
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x14177f08) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018c9dc) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x142e51c8, void * ptr=0x13fe0180) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x142e51c8, void * ptr=0x13fe0180, const char * __formal=0x7174055c)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d38c, vtkObjectBase * obj=0x142e51c8, void * ptr=0x13fe0180,
>> const char * desc=0x7174055c) Line 1069 C++
>>
>> vtkCommon.dll!vtkGarbageCollectorReport<vtkInformation>(vtkGarbageCollector
>> * collector=0x0018d38c, vtkInformation * & ptr=, const char *
>> desc=0x7174055c) Line 201 + 0x17 bytes C++
>> vtkCommon.dll!vtkInformationVector::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d38c) Line 227 + 0x28 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x14177e28) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018caf8) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x142eb640, void * ptr=0x142367a8) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x142eb640, void * ptr=0x142367a8, const char * __formal=0x713dccb8)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d38c, vtkObjectBase * obj=0x142eb640, void * ptr=0x142367a8,
>> const char * desc=0x713dccb8) Line 1069 C++
>> vtkCommon.dll!vtkGarbageCollectorReport<vtkObjectBase>(vtkGarbageCollector
>> * collector=0x0018d38c, vtkObjectBase * & ptr=, const char *
>> desc=0x713dccb8) Line 201 + 0x17 bytes C++
>> vtkCommon.dll!vtkInformation::ReportAsObjectBase(vtkInformationKey *
>> key=0x028d33b0, vtkGarbageCollector * collector=0x0018d38c) Line 826 + 0x16
>> bytes C++
>> vtkCommon.dll!vtkInformationKey::ReportAsObjectBase(vtkInformation *
>> info=0x142e6640, vtkGarbageCollector * collector=0x0018d38c) Line 136 C++
>> vtkCommon.dll!vtkInformation::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d38c) Line 812 + 0xc bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x14177d48) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018cc44) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x142e6640, void * ptr=0x13fe0950) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x142e6640, void * ptr=0x13fe0950, const char * __formal=0x7174055c)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d38c, vtkObjectBase * obj=0x142e6640, void * ptr=0x13fe0950,
>> const char * desc=0x7174055c) Line 1069 C++
>>
>> vtkCommon.dll!vtkGarbageCollectorReport<vtkInformation>(vtkGarbageCollector
>> * collector=0x0018d38c, vtkInformation * & ptr=, const char *
>> desc=0x7174055c) Line 201 + 0x17 bytes C++
>> vtkCommon.dll!vtkInformationVector::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d38c) Line 227 + 0x28 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x14177df0) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018cd60) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x142e4f20, void * ptr=0x142371f0) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x142e4f20, void * ptr=0x142371f0, const char * __formal=0x713e0f7c)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d38c, vtkObjectBase * obj=0x142e4f20, void * ptr=0x142371f0,
>> const char * desc=0x713e0f7c) Line 1069 C++
>>
>> vtkFiltering.dll!vtkGarbageCollectorReport<vtkInformationVector>(vtkGarbageCollector
>> * collector=0x0018d38c, vtkInformationVector * & ptr=, const char *
>> desc=0x713e0f7c) Line 201 + 0x18 bytes C++
>> vtkFiltering.dll!vtkExecutive::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d38c) Line 303 + 0x25 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x141782f8) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018ce7c) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x04c7ae58, void * ptr=0x1478cc14) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x04c7ae58, void * ptr=0x1478cc14, const char * __formal=0x713e0cac)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d38c, vtkObjectBase * obj=0x04c7ae58, void * ptr=0x1478cc14,
>> const char * desc=0x713e0cac) Line 1069 C++
>> vtkCommon.dll!vtkGarbageCollectorReport<vtkObjectBase>(vtkGarbageCollector
>> * collector=0x0018d38c, vtkObjectBase * & ptr=, const char *
>> desc=0x713e0cac) Line 201 + 0x17 bytes C++
>> vtkCommon.dll!vtkSmartPointerBase::Report(vtkGarbageCollector *
>> collector=0x0018d38c, const char * desc=0x713e0cac) Line 96 + 0x10 bytes
>> C++
>> vtkFiltering.dll!vtkInformationExecutivePortKey::Report(vtkInformation *
>> info=0x142eadd0, vtkGarbageCollector * collector=0x0018d38c) Line 157 +
>> 0x17 bytes C++
>> vtkCommon.dll!vtkInformation::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d38c) Line 812 + 0xc bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x14177f40) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018cfc0) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x142eadd0, void * ptr=0x13fe2000) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x142eadd0, void * ptr=0x13fe2000, const char * __formal=0x7174055c)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d38c, vtkObjectBase * obj=0x142eadd0, void * ptr=0x13fe2000,
>> const char * desc=0x7174055c) Line 1069 C++
>>
>> vtkCommon.dll!vtkGarbageCollectorReport<vtkInformation>(vtkGarbageCollector
>> * collector=0x0018d38c, vtkInformation * & ptr=, const char *
>> desc=0x7174055c) Line 201 + 0x17 bytes C++
>> vtkCommon.dll!vtkInformationVector::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d38c) Line 227 + 0x28 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x14177ed0) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018d0dc) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x142da6e0, void * ptr=0x13fe0550) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x142da6e0, void * ptr=0x13fe0550, const char * __formal=0x713e0f7c)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d38c, vtkObjectBase * obj=0x142da6e0, void * ptr=0x13fe0550,
>> const char * desc=0x713e0f7c) Line 1069 C++
>>
>> vtkFiltering.dll!vtkGarbageCollectorReport<vtkInformationVector>(vtkGarbageCollector
>> * collector=0x0018d38c, vtkInformationVector * & ptr=, const char *
>> desc=0x713e0f7c) Line 201 + 0x18 bytes C++
>> vtkFiltering.dll!vtkExecutive::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d38c) Line 303 + 0x25 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x14178058) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018d1f8) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x04c7a7f8, void * ptr=0x0503035c) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x04c7a7f8, void * ptr=0x0503035c, const char * __formal=0x713d76d4)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d38c, vtkObjectBase * obj=0x04c7a7f8, void * ptr=0x0503035c,
>> const char * desc=0x713d76d4) Line 1069 C++
>>
>> vtkFiltering.dll!vtkGarbageCollectorReport<vtkExecutive>(vtkGarbageCollector
>> * collector=0x0018d38c, vtkExecutive * & ptr=, const char * desc=0x713d76d4)
>> Line 201 + 0x18 bytes C++
>> vtkFiltering.dll!vtkAlgorithm::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d38c) Line 924 + 0xf bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x14178020) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x1450ecc0) Line 522 + 0x8 bytes C++
>>
>> vtkFiltering.dll!vtkStreamingDemandDrivenPipeline::ProcessRequest(vtkInformation
>> * request=0x00000000, vtkInformationVector * * inInfoVec=0x00000001,
>> vtkInformationVector * outInfoVec=0x71628b17) Line 287 + 0xe bytes C++
>> vtkFiltering.dll!vtkAlgorithm::UnRegister(vtkObjectBase * o=0x82ce006a)
>> Line 918 C++
>> Crash 5 -- Occurred during SetInput of vtkMarchingSquares
>> vtkFiltering.dll!std::vector<vtkExecutive *,std::allocator<vtkExecutive *>
>>>::insert(std::_Vector_const_iterator<vtkExecutive
>> *,std::allocator<vtkExecutive *> > _Where=..., vtkExecutive * const &
>> _Val=0x14af6568) Line 878 + 0x43 bytes C++
>> vtkFiltering.dll!std::vector<vtkExecutive *,std::allocator<vtkExecutive *>
>>>::push_back(vtkExecutive * const & _Val=0x14af6568) Line 823 + 0x1f bytes
>> C++
>>
>> vtkFiltering.dll!vtkInformationExecutivePortVectorKey::Append(vtkInformation
>> * info=0x0518ca18, vtkExecutive * executive=0x14af6568, int port=0) Line 97
>> C++
>> vtkFiltering.dll!vtkAlgorithm::SetInputConnection(int port=0,
>> vtkAlgorithmOutput * input=0x14af6568) Line 1004 C++
>> vtkFiltering.dll!vtkPolyDataAlgorithm::SetInput(int index=0, vtkDataObject
>> * input=0x04c24138) Line 218 + 0x1a bytes C++
>> vtkFiltering.dll!vtkPolyDataAlgorithm::SetInput(vtkDataObject *
>> input=0x04c24138) Line 211 C++
>> Crash 6 -- Probable cause vtkSmartPointer<vtkActor> going out of scope
>> e84d8b50()
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x02898e98) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018d220) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x056d07f0, void * ptr=0x053b9568) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x056d07f0, void * ptr=0x053b9568, const char * __formal=0x71452158)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d50c, vtkObjectBase * obj=0x056d07f0, void * ptr=0x053b9568,
>> const char * desc=0x71452158) Line 1069 C++
>> vtkCommon.dll!vtkGarbageCollectorReport<vtkObjectBase>(vtkGarbageCollector
>> * collector=0x0018d50c, vtkObjectBase * & ptr=, const char *
>> desc=0x71452158) Line 201 + 0x17 bytes C++
>> vtkCommon.dll!vtkInformation::ReportAsObjectBase(vtkInformationKey *
>> key=0x02933150, vtkGarbageCollector * collector=0x0018d50c) Line 826 + 0x16
>> bytes C++
>> vtkCommon.dll!vtkInformationKey::ReportAsObjectBase(vtkInformation *
>> info=0x051583f8, vtkGarbageCollector * collector=0x0018d50c) Line 136 C++
>> vtkCommon.dll!vtkInformation::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d50c) Line 812 + 0xc bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x02898fe8) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018d36c) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x051583f8, void * ptr=0x02a3a13c) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x051583f8, void * ptr=0x02a3a13c, const char * __formal=0x7143d504)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d50c, vtkObjectBase * obj=0x051583f8, void * ptr=0x02a3a13c,
>> const char * desc=0x7143d504) Line 1069 C++
>>
>> vtkFiltering.dll!vtkGarbageCollectorReport<vtkInformation>(vtkGarbageCollector
>> * collector=0x0018d50c, vtkInformation * & ptr=, const char *
>> desc=0x7143d504) Line 201 + 0x18 bytes C++
>> vtkFiltering.dll!vtkDataObject::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d50c) Line 1022 + 0xf bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x028990c8) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018d5fc) Line 522 + 0x8 bytes C++
>> vtkFiltering.dll!vtkFieldData::~vtkFieldData() Line 213 + 0x10 bytes C++
>> vtkCommon.dll!vtkObject::UnRegisterInternal(vtkObjectBase * o=0x02a3a110,
>> int check=43210112) Line 885 + 0x11 bytes C++
>> vtkCommon.dll!vtkObjectBase::UnRegisterInternal(vtkObjectBase *
>> __formal=0x00000000, int check=1) Line 287 + 0x6 bytes C++
>> vtkFiltering.dll!vtkDataObject::UnRegister(vtkObjectBase * o=0x00000000)
>> Line 832 C++
>> vtkCommon.dll!vtkSmartPointerBase::~vtkSmartPointerBase() Line 64 C++
>> Crash 7 -- Occurred during execution of pipeline composed of
>> vtkMarchingSquares and vtkStripper
>> 4d8dcccc()
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x02a93080) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018cb98) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x14b7e828, void * ptr=0x14bef4c8) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x14b7e828, void * ptr=0x14bef4c8, const char * __formal=0x7143ccb8)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d42c, vtkObjectBase * obj=0x14b7e828, void * ptr=0x14bef4c8,
>> const char * desc=0x7143ccb8) Line 1069 C++
>> vtkCommon.dll!vtkGarbageCollectorReport<vtkObjectBase>(vtkGarbageCollector
>> * collector=0x0018d42c, vtkObjectBase * & ptr=, const char *
>> desc=0x7143ccb8) Line 201 + 0x17 bytes C++
>> vtkCommon.dll!vtkInformation::ReportAsObjectBase(vtkInformationKey *
>> key=0x028f3398, vtkGarbageCollector * collector=0x0018d42c) Line 826 + 0x16
>> bytes C++
>> vtkCommon.dll!vtkInformationKey::ReportAsObjectBase(vtkInformation *
>> info=0x14b7ed78, vtkGarbageCollector * collector=0x0018d42c) Line 136 C++
>> vtkCommon.dll!vtkInformation::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d42c) Line 812 + 0xc bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x02a92c58) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018cce4) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x14b7ed78, void * ptr=0x0522d408) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x14b7ed78, void * ptr=0x0522d408, const char * __formal=0x702b055c)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d42c, vtkObjectBase * obj=0x14b7ed78, void * ptr=0x0522d408,
>> const char * desc=0x702b055c) Line 1069 C++
>>
>> vtkCommon.dll!vtkGarbageCollectorReport<vtkInformation>(vtkGarbageCollector
>> * collector=0x0018d42c, vtkInformation * & ptr=, const char *
>> desc=0x702b055c) Line 201 + 0x17 bytes C++
>> vtkCommon.dll!vtkInformationVector::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d42c) Line 227 + 0x28 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x02a93588) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018ce00) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x14b7e080, void * ptr=0x14bf0090) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x14b7e080, void * ptr=0x14bf0090, const char * __formal=0x71440f7c)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d42c, vtkObjectBase * obj=0x14b7e080, void * ptr=0x14bf0090,
>> const char * desc=0x71440f7c) Line 1069 C++
>>
>> vtkFiltering.dll!vtkGarbageCollectorReport<vtkInformationVector>(vtkGarbageCollector
>> * collector=0x0018d42c, vtkInformationVector * & ptr=, const char *
>> desc=0x71440f7c) Line 201 + 0x18 bytes C++
>> vtkFiltering.dll!vtkExecutive::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d42c) Line 303 + 0x25 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x02a93438) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018cf1c) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x050efb90, void * ptr=0x04f1b2b4) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x050efb90, void * ptr=0x04f1b2b4, const char * __formal=0x71440cac)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d42c, vtkObjectBase * obj=0x050efb90, void * ptr=0x04f1b2b4,
>> const char * desc=0x71440cac) Line 1069 C++
>> vtkCommon.dll!vtkGarbageCollectorReport<vtkObjectBase>(vtkGarbageCollector
>> * collector=0x0018d42c, vtkObjectBase * & ptr=, const char *
>> desc=0x71440cac) Line 201 + 0x17 bytes C++
>> vtkCommon.dll!vtkSmartPointerBase::Report(vtkGarbageCollector *
>> collector=0x0018d42c, const char * desc=0x71440cac) Line 96 + 0x10 bytes
>> C++
>> vtkFiltering.dll!vtkInformationExecutivePortKey::Report(vtkInformation *
>> info=0x14b7b268, vtkGarbageCollector * collector=0x0018d42c) Line 157 +
>> 0x17 bytes C++
>> vtkCommon.dll!vtkInformation::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d42c) Line 812 + 0xc bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x02a92b40) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018d060) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x14b7b268, void * ptr=0x0517db60) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x14b7b268, void * ptr=0x0517db60, const char * __formal=0x702b055c)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d42c, vtkObjectBase * obj=0x14b7b268, void * ptr=0x0517db60,
>> const char * desc=0x702b055c) Line 1069 C++
>>
>> vtkCommon.dll!vtkGarbageCollectorReport<vtkInformation>(vtkGarbageCollector
>> * collector=0x0018d42c, vtkInformation * & ptr=, const char *
>> desc=0x702b055c) Line 201 + 0x17 bytes C++
>> vtkCommon.dll!vtkInformationVector::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d42c) Line 227 + 0x28 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x02a92f68) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018d17c) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x04fe14d0, void * ptr=0x0517d590) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x04fe14d0, void * ptr=0x0517d590, const char * __formal=0x71440f7c)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d42c, vtkObjectBase * obj=0x04fe14d0, void * ptr=0x0517d590,
>> const char * desc=0x71440f7c) Line 1069 C++
>>
>> vtkFiltering.dll!vtkGarbageCollectorReport<vtkInformationVector>(vtkGarbageCollector
>> * collector=0x0018d42c, vtkInformationVector * & ptr=, const char *
>> desc=0x71440f7c) Line 201 + 0x18 bytes C++
>> vtkFiltering.dll!vtkExecutive::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d42c) Line 303 + 0x25 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x02a930f0) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x0018d298) Line 522 + 0x8 bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x050efc50, void * ptr=0x02a1f3ec) Line 639 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::Report(vtkObjectBase *
>> obj=0x050efc50, void * ptr=0x02a1f3ec, const char * __formal=0x714376d4)
>> Line 602 C++
>> vtkCommon.dll!vtkGarbageCollectorReportInternal(vtkGarbageCollector *
>> collector=0x0018d42c, vtkObjectBase * obj=0x050efc50, void * ptr=0x02a1f3ec,
>> const char * desc=0x714376d4) Line 1069 C++
>>
>> vtkFiltering.dll!vtkGarbageCollectorReport<vtkExecutive>(vtkGarbageCollector
>> * collector=0x0018d42c, vtkExecutive * & ptr=, const char * desc=0x714376d4)
>> Line 201 + 0x18 bytes C++
>> vtkFiltering.dll!vtkAlgorithm::ReportReferences(vtkGarbageCollector *
>> collector=0x0018d42c) Line 924 + 0xf bytes C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::VisitTarjan(vtkObjectBase *
>> obj=0x02a93898) Line 552 C++
>> vtkCommon.dll!vtkGarbageCollectorImpl::MaybeVisit(vtkObjectBase *
>> obj=0x051e3960) Line 522 + 0x8 bytes C++
>>
>> vtkFiltering.dll!vtkStreamingDemandDrivenPipeline::ProcessRequest(vtkInformation
>> * request=0x02a1f3b8, vtkInformationVector * * inInfoVec=0x70073273,
>> vtkInformationVector * outInfoVec=0x02a1f3b8) Line 287 + 0xe bytes C++
>> vtkCommon.dll!vtkObjectBase::UnRegisterInternal(vtkObjectBase *
>> __formal=0x00000000, int check=1) Line 287 + 0x6 bytes C++
>> vtkFiltering.dll!vtkAlgorithm::UnRegister(vtkObjectBase * o=0x00000000)
>> Line 918 C++
>> vtkCommon.dll!vtkSmartPointerBase::~vtkSmartPointerBase() Line 64 C++
>>
>
> Is every part of your application compiled for release? Remember in
> Visual Studio you can not mix debug and release so all parts have to
> use Release or Debug not a mix of the two.
>
> John
_______________________________________________
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 VTK FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
Follow this link to subscribe/unsubscribe:
http://www.vtk.org/mailman/listinfo/vtkusers
_______________________________________________
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 VTK FAQ at: http://www.vtk.org/Wiki/VTK_FAQ
Follow this link to subscribe/unsubscribe:
http://www.vtk.org/mailman/listinfo/vtkusers
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20110906/5037429b/attachment.htm>
More information about the vtkusers
mailing list