D23098: Don't crash when X11Compositor tears down

Vlad Zagorodniy <[email protected]>
Newsgroups gmane.comp.kde.devel.kwin
Message-ID <[email protected]>
zzag created this revision.
zzag added a reviewer: KWin.
Herald added a project: KWin.
Herald added a subscriber: kwin.
zzag requested review of this revision.

REVISION SUMMARY
  Compositor::stop() cannot be called from destructor of the Compositor
  class because Workspace may call Compositor::updateCompositeBlocking()
  when an instance of Deleted is removed/discarded.
  
  Another solution is to call stop() method before destroying the compositor
  object, but that's against RAII.

TEST PLAN
  KWin no longer crashes when running kwin_x11 --replace command.

REPOSITORY
  R108 KWin

BRANCH
  dont-call-pure-virtual-method

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

AFFECTED FILES
  composite.cpp
  composite.h

To: zzag, #kwin
Cc: kwin, LeGast00n, sbergeron, jraleigh, fbampaloukas, GB_2, mkulinski, ragreen, jackyalcine, Pitel, iodelay, crozbo, bwowk, ZrenBot, ngraham, alexeymin, himcesjf, lesliezhai, ali-mohamed, hardening, romangg, jensreuterberg, abetts, sebas, apol, mart
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.