<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:Courier New,courier,monaco,monospace,sans-serif;font-size:10pt"><div style="font-family: Courier New,courier,monaco,monospace,sans-serif; font-size: 10pt;"><span style="font-family: arial,helvetica,sans-serif;">Ok, look like a bug. Look at the code of the file vtkSeedRepresentation.cxx:<br><br><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;">/----------------------------------------------------------------------</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;">void vtkSeedRepresentation::RemoveHandle( int n )</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;">{</span><br style="font-family: Courier
New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> // Remove nth handle</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> </span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> if (n == this->ActiveHandle)</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> {</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> this->RemoveActiveHandle();</span><br style="font-family: Courier
New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> return;</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> }</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> if (static_cast<int>(this->Handles->size()) <= n )</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> {</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier
New,courier,monaco,monospace,sans-serif;"> return;</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> }</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> vtkHandleListIterator iter = this->Handles->begin();</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> vtkstd::advance( iter, n );</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><br></span></span><span style="font-family: arial,helvetica,sans-serif;
font-weight: bold;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;">
this->Handles->erase( iter );</span></span><span style="font-family: arial,helvetica,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif; font-weight: bold;"> </span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif; font-weight: bold;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif; font-weight: bold;"> ( *iter )->Delete();</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"></span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;">}</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier
New,courier,monaco,monospace,sans-serif;">//----------------------------------------------------------------------</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;">void vtkSeedRepresentation::RemoveActiveHandle()</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;">{</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> if ( this->Handles->size() < 1 )</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> {</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family:
Courier New,courier,monaco,monospace,sans-serif;"> return;</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> }</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> if ( this->ActiveHandle >= 0 && this->ActiveHandle < static_cast<int>(this->Handles->size()) )</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> {</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> vtkHandleListIterator iter = this->Handles->begin();</span><br
style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> vtkstd::advance( iter, this->ActiveHandle );</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> </span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"></span><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> <span style="font-weight: bold;">this->Handles->erase( iter );</span></span><br style="font-weight: bold;"></span><span style="font-family: arial,helvetica,sans-serif; font-weight: bold;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;">
( *iter )->Delete();</span></span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: arial,helvetica,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> this->ActiveHandle = -1;</span><br style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"> }</span><br></span><br><span style="font-family: arial,helvetica,sans-serif;"><br>Basically the error are in the following lines:<br><br></span><span style="font-family: arial,helvetica,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-weight: bold;">this->Handles->erase( iter );</span></span><br style="font-weight: bold;"> </span><span style="font-family: arial,helvetica,sans-serif; font-weight: bold;"><span style="font-family:
Courier New,courier,monaco,monospace,sans-serif;">( *iter )->Delete();</span></span><br><br><span style="font-family: arial,helvetica,sans-serif;">You have to FIRST delete the object and THEN remove the handle! That is you have to swap the two lines:<br><br></span><span style="font-family: arial,helvetica,sans-serif;"> </span><span style="font-family: arial,helvetica,sans-serif; font-weight: bold;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;">(
*iter )->Delete();</span></span><br>
<span style="font-family: arial,helvetica,sans-serif;"><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;"><span style="font-weight: bold;">this->Handles->erase( iter );</span></span><br style="font-weight: bold;"></span><br><span style="font-family: arial,helvetica,sans-serif;">Now the example no longer crash (and my application too!).<br><br>My two cents!<br><br>- AGPX</span><br><br><br><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;"><font face="Tahoma" size="2"><hr size="1"><b><span style="font-weight: bold;">Da:</span></b> AGPX <agpxnet@yahoo.it><br><b><span style="font-weight: bold;">A:</span></b> vtk vtk <vtkusers@vtk.org><br><b><span style="font-weight: bold;">Inviato:</span></b> Ven 5 marzo 2010, 12:19:45<br><b><span style="font-weight: bold;">Oggetto:</span></b> vtkSeedWidget bug?<br></font><br><div style="font-family: arial,helvetica,sans-serif; font-size:
10pt;"><div>Hi,<br><br>I have compiled the latest version of VTK (from CVS) and the WidgetsCxxTests.exe (debug mode) crashs when you run Test15 (vtkSeedWidget). The error reported is: "list iterator not dereferencable" and the debugger show the line:<br><br><span style="font-family: Courier New,courier,monaco,monospace,sans-serif;">( *iter )->Delete();</span><br><br>inside the <span style="font-family: Courier New,courier,monaco,monospace,sans-serif;">vtkSeedRepresentation::RemoveHandle</span> method. Basically the <span style="font-family: Courier New,courier,monaco,monospace,sans-serif;">DeleteSeed</span> seems doesn't work. I tested it on Microsoft Windows XP Pro with Visual Studio 2008 SP1. Any idea on how to fix? Thanks.<br><br>- AGPX<br></div>
</div><br>
</div></div>
</div><br>
</body></html>