[prev in list] [next in list] [prev in thread] [next in thread] 

List:       vtkusers
Subject:    Re: [vtkusers] Why does this segfault?
From:       Christopher Mullins <christopher.mullins () kitware ! com>
Date:       2013-05-31 22:47:29
Message-ID: CABVTP-LPYTvxPpuj5rFGt8s36qW6-NvvvG_6GxrUSUc9zfXzRQ () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


I'm getting the following error:

ERROR: In VTK/Common/Transforms/vtkTransform.cxx, line 242
vtkTransform (0x7f81c94172c0): Concatenate: this would create a circular
reference.

pointing to this line [1].  Looks like it could be circuit you're creating
when you concatenate those transforms in the loop, where CircuitCheck [2]
is returning true.  If you use trans2->Concatenate(inv3->GetMatrix());
instead of passing the transform directly it terminates correctly.  Maybe
someone else would know more about why, but it could be because GetMatrix()
calls Update().

[1]
https://github.com/Kitware/VTK/blob/master/Common/Transforms/vtkTransform.cxx#L242
[2]
http://www.vtk.org/doc/nightly/html/classvtkTransform.html#a47c335c53f0917826db0e17724508640



On Fri, May 31, 2013 at 6:56 PM, Shawn Waldon <swaldon@cs.unc.edu> wrote:

> Hello all,
>
> I have been using vtk for a project and I ran across a simple case where I
> can delete a vtkLinearTransform that I have a smart pointer to by
> concatenating it onto another transform and calling Identity on that
> transform.  I have attached a stripped down example program the exhibits
> the error.  Every time through the loop in the test program the inverse's
> reference count is decremented somehow until it is deleted and the program
> segfaults on the next call to TransformVector/TransformPoint.
>
> Does anyone have any idea what is going on here?
>
> Thank you,
>
> Shawn Waldon
>
> _______________________________________________
> 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
>
>


-- 
Christopher Mullins
R&D Engineer
Kitware Inc.,
919.869.8871

[Attachment #5 (text/html)]

<div dir="ltr">I&#39;m getting the following error:<div><br><div><div>ERROR: In \
VTK/Common/Transforms/vtkTransform.cxx, line 242</div><div>vtkTransform \
(0x7f81c94172c0): Concatenate: this would create a circular reference.</div> \
</div><div><br></div><div style>pointing to this line [1].  Looks like it could be \
circuit you&#39;re creating when you concatenate those transforms in the loop, where \
CircuitCheck [2] is returning true.  If you use \
trans2-&gt;Concatenate(inv3-&gt;GetMatrix()); instead of passing the transform \
directly it terminates correctly.  Maybe someone else would know more about why, but \
it could be because GetMatrix() calls Update().</div> <div style><br></div><div \
style>[1] <a href="https://github.com/Kitware/VTK/blob/master/Common/Transforms/vtkTra \
nsform.cxx#L242">https://github.com/Kitware/VTK/blob/master/Common/Transforms/vtkTransform.cxx#L242</a></div>
 <div style>[2] <a href="http://www.vtk.org/doc/nightly/html/classvtkTransform.html#a4 \
7c335c53f0917826db0e17724508640">http://www.vtk.org/doc/nightly/html/classvtkTransform.html#a47c335c53f0917826db0e17724508640</a></div><div>
 <br></div></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On \
Fri, May 31, 2013 at 6:56 PM, Shawn Waldon <span dir="ltr">&lt;<a \
href="mailto:swaldon@cs.unc.edu" target="_blank">swaldon@cs.unc.edu</a>&gt;</span> \
wrote:<br> <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px \
#ccc solid;padding-left:1ex"><div dir="ltr"><div><div>Hello all,<br><br></div>I have \
been using vtk for a project and I ran across a simple case where I can delete a \
vtkLinearTransform that I have a smart pointer to by concatenating it onto another \
transform and calling Identity on that transform.  I have attached a stripped down \
example program the exhibits the error.  Every time through the loop in the test \
program the inverse&#39;s reference count is decremented somehow until it is deleted \
and the program segfaults on the next call to TransformVector/TransformPoint.<br>

<br></div><div>Does anyone have any idea what is going on \
here?<br><br></div><div>Thank you,<br><br></div><div>Shawn Waldon<br></div></div> \
<br>_______________________________________________<br> Powered by <a \
href="http://www.kitware.com" target="_blank">www.kitware.com</a><br> <br>
Visit other Kitware open-source projects at <a \
href="http://www.kitware.com/opensource/opensource.html" \
target="_blank">http://www.kitware.com/opensource/opensource.html</a><br> <br>
Please keep messages on-topic and check the VTK FAQ at: <a \
href="http://www.vtk.org/Wiki/VTK_FAQ" \
target="_blank">http://www.vtk.org/Wiki/VTK_FAQ</a><br> <br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://www.vtk.org/mailman/listinfo/vtkusers" \
target="_blank">http://www.vtk.org/mailman/listinfo/vtkusers</a><br> \
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br>Christopher \
Mullins<div>R&amp;D Engineer</div><div>Kitware Inc.,</div><div>919.869.8871</div> \
</div>



_______________________________________________
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


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic