broulik created this revision.
broulik added a reviewer: Plasma.
broulik set the repository for this revision to R119 Plasma Desktop.
Restricted Application added a project: Plasma.
Restricted Application added a subscriber: plasma-devel.

REVISION SUMMARY
  While trying to fix a random plasmashell crash I was getting fairly often 
(and I hoped was fixed by David's last spacer fix) I found that the cause was 
actually in virtual desktop pager.
  
  The virtual desktop pager is hidden when there's just one desktop and it will 
not update its models in this case to save resources. Back when I added this I 
already noticed that sometimes the pager (usually after one "open and close 
panelcontroller" cycle) still thought it was visible. It was even weirder than 
that, I found out that on teardown it suddenly thought it became visible. This 
had it populate its model which in turn spawned QML items, all of this whilst 
the panel was already in the process of destroying its children, leading to a 
crash.

TEST PLAN
  Previously I could easily reproduce the crash:
  start plasmashell
  open panel controller
  quickly open krunner and type kquitapp plasmashell
  boom
  
  No more, gosh, this was a weird one. Also verified that virtual desktop pager 
"enabled" property stays consistent.

REPOSITORY
  R119 Plasma Desktop

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

AFFECTED FILES
  containments/panel/contents/ui/main.qml

EMAIL PREFERENCES
  https://phabricator.kde.org/settings/panel/emailpreferences/

To: broulik, #plasma
Cc: plasma-devel, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas

Reply via email to