ScreenShield: clear the lock screen early when deactivating
Upon popMode, MessageTray will try readding all notifications to their rightful parent, so we must tell NotificationBox to relinquish them before st_bin_set_child() fails (leaving a dangling child pointer and crashing at the next allocation) https://bugzilla.gnome.org/show_bug.cgi?id=698812
This commit is contained in:
parent
c864ebeabb
commit
61fe000daa
@ -1115,6 +1115,9 @@ const ScreenShield = new Lang.Class({
|
||||
deactivate: function(animate) {
|
||||
this._hideLockScreen(animate, 0);
|
||||
|
||||
if (this._hasLockScreen)
|
||||
this._clearLockScreen();
|
||||
|
||||
if (Main.sessionMode.currentMode == 'lock-screen')
|
||||
Main.sessionMode.popMode('lock-screen');
|
||||
if (Main.sessionMode.currentMode == 'unlock-dialog')
|
||||
@ -1131,9 +1134,6 @@ const ScreenShield = new Lang.Class({
|
||||
},
|
||||
|
||||
_completeDeactivate: function() {
|
||||
if (this._hasLockScreen)
|
||||
this._clearLockScreen();
|
||||
|
||||
if (this._dialog && !this._isGreeter) {
|
||||
this._dialog.destroy();
|
||||
this._dialog = null;
|
||||
|
Loading…
Reference in New Issue
Block a user