<div dir="ltr">Sounds like the TIFFImageIO is trying to cache the buffer that it used. I don&#39;t think it should do this for reasons related to the problem you found.<br><br>Can you enter a bug in the bug tracker?<br><br>
<br><br><div class="gmail_quote">On Mon, Aug 4, 2008 at 5:32 AM,  <span dir="ltr">&lt;Yulia.Arzhaeva@csiro.au&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi,<br>
<br>
Indeed, there is no problem with running an &quot;InPlace&quot; filter with<br>
provided example images. However, there are no examples of tif images in<br>
the Examples\Data folder, and the runtime error I described in an<br>
earlier email happens when I run a ThresholdImageFilter test with some<br>
tif images.<br>
<br>
I found out that the crash has nothing to do with filtering but with<br>
writing an output image in a file. Although, it&#39;s not possible to catch<br>
it as an exception - the error happens because a null pointer is<br>
addressed within one of the functions called inside TIFFImageIO::Read().<br>
<br>
<br>
I&#39;ve done a bit of debugging and that is what I&#39;ve found. In a pipeline,<br>
that connects a reader with a filter with a writer, calling<br>
writer-&gt;Update() causes an update of a reader, because, with<br>
filter-&gt;InPlaceOn(), the filter input gets released. For tif images,<br>
TIFFImageIO::Read() is called, which uses m_InternalImage that is<br>
supposed to have a non-null pointer m_Image to an allocated piece of<br>
memory. m_InternalImage is filled in TIFFImageIO::CanReadFile(), which<br>
is not called the second time, as a part of writer-&gt;Update() procedure.<br>
As a result, m_InternalImage-&gt;m_Image points to NULL, and causes the<br>
runtime error when addressed in TIFFImageIO::Read(). &nbsp;If one includes<br>
filter-&gt;GetOutput()-&gt;DisconnectPipeline() before calling<br>
writer-&gt;Update(), no error occurs because no input image update occurs.<br>
<br>
I guess, there might be an error in handling tif images. Could anyone<br>
please comment?<br>
Thanks.<br>
Yulia<br>
<br>
<br>
----------<br>
<div><div></div><div class="Wj3C7c">Bill Lorensen wrote:<br>
<br>
Yulia,<br>
<br>
The example works fine for me when I add filter-&gt;InPlaceOn(). Are you<br>
running the example data or your own?<br>
<br>
Replace the first filter-&lt;Update(); with<br>
<br>
 &nbsp;try<br>
 &nbsp; &nbsp;{<br>
 &nbsp; &nbsp;filter-&gt;Update();<br>
 &nbsp; &nbsp;}<br>
 &nbsp;catch (itk::ExceptionObject &amp;ex)<br>
 &nbsp; &nbsp;{<br>
 &nbsp; &nbsp;std::cout &lt;&lt; ex;<br>
 &nbsp; &nbsp;return EXIT_FAILURE;<br>
 &nbsp; &nbsp;}<br>
<br>
and see if you get more information.<br>
<br>
Actually, place a try/catch around each -&gt;Update() just in case the<br>
problem is with reading or writing.<br>
<br>
Bill<br>
<br>
On Fri, Jul 25, 2008 at 11:07 AM, &nbsp;&lt;Yulia.Arzhaeva@csiro.au&gt; wrote:<br>
&gt; Hello,<br>
&gt;<br>
&gt; I have just started using ITK, so I might have overlooked something..<br>
&gt;<br>
&gt; I have tried to use ThresholdImageFilter with &quot;InPlace&quot; feature ON,<br>
i.e. I called filter-&gt;InPlaceOn() before calling filter-&gt;Update(). As a<br>
result, I got a runtime error. I played with an example code, so it can<br>
be reproducible.<br>
&gt;<br>
&gt; If you take an example code ThresholdImageFilter.cxx from the<br>
..\Examples\Filtering folder , leave just one filter update instead of<br>
three updates, for simplicity, and insert filter-&gt;InPlaceOn(), would you<br>
get a runtime error as well?<br>
&gt;<br>
&gt; Could you explain me what&#39;s wrong, either with my way to set InPlace<br>
feature, or with using such a filter &quot;In Place&quot; at all?<br>
&gt;<br>
&gt; Thanks,<br>
&gt; Yulia<br>
&gt; _______________________________________________<br>
&gt; Insight-users mailing list<br>
&gt; <a href="mailto:Insight-users@itk.org">Insight-users@itk.org</a><br>
&gt; <a href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank">http://www.itk.org/mailman/listinfo/insight-users</a><br>
&gt;<br>
_______________________________________________<br>
Insight-users mailing list<br>
<a href="mailto:Insight-users@itk.org">Insight-users@itk.org</a><br>
<a href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank">http://www.itk.org/mailman/listinfo/insight-users</a><br>
<br>
<br>
_______________________________________________<br>
Insight-users mailing list<br>
<a href="mailto:Insight-users@itk.org">Insight-users@itk.org</a><br>
<a href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank">http://www.itk.org/mailman/listinfo/insight-users</a><br>
</div></div></blockquote></div><br></div>