D18245: [DrKonqi] Create QApplication in a scope to fix possible deadlock

Christoph Roick noreply at phabricator.kde.org
Mon Jan 14 15:14:36 GMT 2019


croick created this revision.
Herald added a project: Plasma.
Herald added a subscriber: plasma-devel.
croick requested review of this revision.

REVISION SUMMARY
  Observed with a crashing KDevelop:
  If the QApplication is destructed after cleanup of the DrKonqi
  backend, somehow a DrKonqi-thread of the QDBusConnection may be
  blocked by the debuggee (poll() being stuck according to strace).
  Since DrKonqi then cannot quit, KCrash continues waiting, leading
  to a deadlock. The situation may be disentangled by externally
  sending SIGSTOP to the debuggee.
  
  Cleaning up the QApplication first and afterwards the backend
  omits the deadlock.

TEST PLAN
  - let kdevelop crash to fire up DrKonqi
  - close DrKonqi again
  - watch state of crashed kdevelop process

REPOSITORY
  R871 DrKonqi

BRANCH
  scopedqapp

REVISION DETAIL
  https://phabricator.kde.org/D18245

AFFECTED FILES
  src/main.cpp

To: croick
Cc: plasma-devel, sukalyanbanga, jraleigh, GB_2, ragreen, Pitel, ZrenBot, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20190114/5874fab1/attachment.html>


More information about the Plasma-devel mailing list