<br><br><div class="gmail_quote">On Thu, May 20, 2010 at 10:27 PM, Boudewijn Rempt <span dir="ltr">&lt;<a href="mailto:boud@valdyas.org">boud@valdyas.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div><div></div><div class="h5">On Thu, 20 May 2010, Dmitry Kazakov wrote:<br>
<br>
&gt; Hi, All!<br>
&gt;<br>
&gt; I wanted to add a benchmark for the stack recomposition process and i faced<br>
&gt; with the problem. It randomly crashes in the end of the execution. More than<br>
&gt; that, these crashes  happen in very strange backtraces like libc.so:free. It<br>
&gt; looks like there are some threads still running on exit, but i can&#39;t get<br>
&gt; what is happening. Could you help me with this? Or  maybe suggest some tool,<br>
&gt; that can report me what are the treads doing?<br>
<br>
</div></div>Hm... That&#39;s a difficult question. The  best tool seems to be helgrind<br>
(valgrind --tool=helgrind krita), but I don&#39;t actually know how to use<br>
that myself... When running krita with helgrind I do see a lot of errors.<br>
It might be easier to attach a breakpoint at the destructor of QApplication,<br>
run under gdb and check for running threads there.<br>

</blockquote></div><br>Well, gdb reports running threads after the crash. And the backtrace looks like the waiter object is not properly disconnected from the image and i don&#39;t understand why. More that that, i don&#39;t understand why the imageUpdated signal is emitted while the object is destroyed? Does KIsDoc request update on exit?<br clear="all">
<br>-- <br>Dmitry Kazakov<br>