<table><tr><td style="">kossebau added inline comments.
</td><a style="text-decoration: none; padding: 4px 8px; margin: 0 8px 8px; float: right; color: #464C5C; font-weight: bold; border-radius: 3px; background-color: #F7F7F9; background-image: linear-gradient(to bottom,#fff,#f1f0f1); display: inline-block; border: 1px solid rgba(71,87,120,.2);" href="https://phabricator.kde.org/D12527">View Revision</a></tr></table><br /><div><strong>INLINE COMMENTS</strong><div><div style="margin: 6px 0 12px 0;"><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D12527#inline-73271">View Inline</a><span style="color: #4b4d51; font-weight: bold;">ktexteditorpluginintegration.cpp:350</span></div>
<div style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; white-space: pre-wrap; clear: both; padding: 4px 0; margin: 0;"><div style="padding: 0 8px; margin: 0 4px; ">    <span style="color: #aa4000">auto</span> <span class="n">viewBar</span> <span style="color: #aa2211">=</span> <span class="n">m_viewBars</span><span class="p">.</span><span class="n">take</span><span class="p">(</span><span class="n">view</span><span class="p">);</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(151, 234, 151, .6);">    <span style="color: #aa4000">if</span> <span class="p">(</span><span class="n">m_mainWindow</span><span style="color: #aa2211">-></span><span class="n">viewBarContainer</span><span class="p">())</span> <span class="p">{</span>
</div><div style="padding: 0 8px; margin: 0 4px; ">        <span style="color: #aa4000">if</span> <span class="p">(</span><span class="n">viewBar</span> <span style="color: #aa2211">==</span> <span class="n">m_viewBarContainerLayout</span><span style="color: #aa2211">-></span><span class="n">currentWidget</span><span class="p">())</span> <span class="p">{</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">Given the viewBarContainer widget is a child of the KDevelop::MainWindow object m_mainWindow and only destructed once that m_mainWindow is destructed, this check seems fragile.<br />
And actually the this class here, KTextEditorIntegration::MainWindow is a child object of m_mainWindow as well, given that one is set as parent to this object, so both objects should be deleted at the same time, in some unspecified order (seems that child widgets are destroyed earlier than other child objects).</p>

<p style="padding: 0; margin: 8px;">Though given that the actual KTextEditor::View objecst are only deleted with deleteLater(), but the KTextEditor::MainWindow object passed to them should be "valid for the complete lifetime of the view", it seems this needs some bigger changes: once to delay the deletion of this object with deleteLater as well and prepare for the actual-mainwindow-already-deleted state. Will see to prepare some patch for this, as I have a debuggin-enriched build already here (needed to find out what I just wrote ;) )</p></div></div><br /><div style="border: 1px solid #C7CCD9; border-radius: 3px;"><div style="padding: 0; background: #F7F7F7; border-color: #e3e4e8; border-style: solid; border-width: 0 0 1px 0; margin: 0;"><div style="color: #74777d; background: #eff2f4; padding: 6px 8px; overflow: hidden;"><a style="float: right; text-decoration: none;" href="https://phabricator.kde.org/D12527#inline-73272">View Inline</a><span style="color: #4b4d51; font-weight: bold;">textdocument.cpp:546</span></div>
<div style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; white-space: pre-wrap; clear: both; padding: 4px 0; margin: 0;"><div style="padding: 0 8px; margin: 0 4px; background: rgba(251, 175, 175, .7);"><span style="color: #aa4000">bool</span> <span class="n">TextDocument</span><span style="color: #aa2211">::</span><span class="n">close</span><span class="p">(</span><span class="n">DocumentSaveMode</span> <span class="n">mode</span><span class="p">)</span>
</div><div style="padding: 0 8px; margin: 0 4px; background: rgba(251, 175, 175, .7);"><span class="p">{</span>
</div></div></div>
<div style="margin: 8px 0; padding: 0 12px;"><p style="padding: 0; margin: 8px;">From what I saw so far would agree this seems no longer needed and just a duplication.</p></div></div></div></div></div><br /><div><strong>REPOSITORY</strong><div><div>R32 KDevelop</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D12527">https://phabricator.kde.org/D12527</a></div></div><br /><div><strong>To: </strong>croick, KDevelop<br /><strong>Cc: </strong>kossebau, kdevelop-devel<br /></div>