OutputView Model

Andreas Pakulat apaku at gmx.de
Sat Jan 30 21:25:07 UTC 2010


On 30.01.10 21:59:34, Niko Sams wrote:
> Hi,
> 
> I'm trying to fix that crash:
> https://bugs.kde.org/show_bug.cgi?id=222317
> By setting OutputJob::m_outputModel to 0 when the model gets deleted.
> 
> And I found out that the OutputModel is only deleted on kdevelop quit.

Apparently OutputData doesn't have a destructor that deletes the model
and delegate if it own either or both.

> Same with ToolViewData

Uhm, unless I'm mistaken toolview data is deleted when a toolview is
removed (see StandardOutputView::removeToolView). Of course if you don't
close the toolview explicitly that'll only happen on shutdown (or maybe
the standardoutputview::cleanup function doesn't remove all toolviews?

> and OutputData.

That is true, the destructor of ToolViewData doesn't delete its output
data's.

> And: what is the use case for IOutputView::setModel() with KeepOwnership?

That the registrator of the outputview doesn't get its model deleted
behind his back. There are outputviews where the model is "long-lived"
(svn for example) and where removal of an outputview must not delete the
underlying model.

Andreas

-- 
You seek to shield those you love and you like the role of the provider.




More information about the KDevelop-devel mailing list