bshah created this revision. bshah added reviewers: Plasma, mart. Restricted Application added a project: Plasma. Restricted Application added a subscriber: plasma-devel.
REVISION SUMMARY When moving panel between two screens there is time when panel is on edge of screen and screenToFollow is null, at this point if any of the resize or position operation gets triggered, it will attempt to get screenToFollow's size or geometry and will result in crash as for sometime screenToFollow is null. This is quite a timing related bug, if you manage to move panel in time there would be no crash otherwise there are 3-4 different crashes are possible. To solve this we avoid setting null values for screenToFollow, this should not happen ideally, but setting breakpoint on setScreenToFollow shows that null value is set from QML and should be investigated. BUG: 369228 TEST PLAN moved panel around like crazy, can't reproduce crash on QScreen::size or QScreen::geometry, without patch it would crash 100% REPOSITORY rPLASMAWORKSPACE Plasma Workspace BRANCH fix-panelmove-crash (branched from Plasma/5.8) REVISION DETAIL https://phabricator.kde.org/D2970 AFFECTED FILES shell/panelview.cpp EMAIL PREFERENCES https://phabricator.kde.org/settings/panel/emailpreferences/ To: bshah, #plasma, mart Cc: plasma-devel, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas