<table><tr><td style="">mwolff created this revision.<br />Restricted Application added a project: Frameworks.<br />Restricted Application added a subscriber: Frameworks.
</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/D9189" rel="noreferrer">View Revision</a></tr></table><br /><div><strong>REVISION SUMMARY</strong><div><p>For some reason the 'Open With' dialog opened by KMail triggers the<br />
following crash for me:</p>

<p>#0  0x0000555568ea4220 in ?? ()<br />
 #1  0x00007ffff549bd60 in QObject::connect(QObject const*, char const*, QObject const*, char const*, Qt::ConnectionType) () from /usr/lib/libQt5Core.so.5<br />
 #2  0x00007ffff71287f4 in KLineEdit::setCompletionObject (this=0x555568ee8c00, comp=0x555568ea1320, handle=<optimized out>)</p>

<div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">at /home/milian/projects/kf5/src/frameworks/kcompletion/src/klineedit.cpp:1514</pre></div>

<p>#3  0x00007ffff7113d35 in KComboBox::setLineEdit (this=0x555568ea3ba0, edit=0x555568ee8c00) at /home/milian/projects/kf5/src/frameworks/kcompletion/src/kcombobox.cpp:325<br />
 #4  0x00007ffff784ef63 in KOpenWithDialogPrivate::init (this=0x7fff70240440,</p>

<div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">_text="<qt>Select the program you want to use to open the file<br/>DebuggingProfilingWindows-2017-WK50.pdf</qt>", _value="")
at /home/milian/projects/kf5/src/frameworks/kio/src/widgets/kopenwithdialog.cpp:601</pre></div>

<p>#5  0x00007ffff784f93c in KOpenWithDialog::KOpenWithDialog (this=0x7fffffffba50, _urls=QList<QUrl> = {...}, _text=..., _value="", parent=<optimized out>)</p>

<div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">at /home/milian/projects/kf5/src/frameworks/kio/src/widgets/kopenwithdialog.cpp:531</pre></div>

<p>#6  0x00007ffff7862b51 in KRun::displayOpenWithDialog (lst=QList<QUrl> = {...}, window=0x55555599a690, tempFiles=tempFiles@entry=true, suggestedFileName="",</p>

<div class="remarkup-code-block" style="margin: 12px 0;" data-code-lang="text" data-sigil="remarkup-code-block"><pre class="remarkup-code" style="font: 11px/15px "Menlo", "Consolas", "Monaco", monospace; padding: 12px; margin: 0; background: rgba(71, 87, 120, 0.08);">asn=<QArrayData::shared_null+24> "") at /home/milian/projects/kf5/src/frameworks/kio/src/widgets/krun.cpp:267</pre></div>

<p>Guard against it by using a QPointer to check whether the completion<br />
object gets destroyed before we want to use it again.</p>

<p>Sadly WebEngine in KMail prevents me from using Valgrind, so I have<br />
not yet figured out where exactly the deletion is coming from. That<br />
said, this fix should make this working again with minimal impact.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>R284 KCompletion</div></div></div><br /><div><strong>BRANCH</strong><div><div>master</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D9189" rel="noreferrer">https://phabricator.kde.org/D9189</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>src/kcombobox.cpp</div></div></div><br /><div><strong>To: </strong>mwolff<br /><strong>Cc: </strong>Frameworks<br /></div>