background: Disconnect from 'prepare-for-sleep' signal
This signal connection was keeping Background instances from being garbage collected. https://bugzilla.gnome.org/show_bug.cgi?id=777934
This commit is contained in:
parent
9f6f48025d
commit
b1dcea7cf1
@ -254,7 +254,8 @@ const Background = new Lang.Class({
|
|||||||
this._loadAnimation(this._animation.file);
|
this._loadAnimation(this._animation.file);
|
||||||
}));
|
}));
|
||||||
|
|
||||||
LoginManager.getLoginManager().connect('prepare-for-sleep',
|
let loginManager = LoginManager.getLoginManager();
|
||||||
|
this._prepareForSleepId = loginManager.connect('prepare-for-sleep',
|
||||||
(lm, aboutToSuspend) => {
|
(lm, aboutToSuspend) => {
|
||||||
if (aboutToSuspend)
|
if (aboutToSuspend)
|
||||||
return;
|
return;
|
||||||
@ -283,6 +284,10 @@ const Background = new Lang.Class({
|
|||||||
this._clock.disconnect(this._timezoneChangedId);
|
this._clock.disconnect(this._timezoneChangedId);
|
||||||
this._timezoneChangedId = 0;
|
this._timezoneChangedId = 0;
|
||||||
|
|
||||||
|
if (this._prepareForSleepId != 0)
|
||||||
|
LoginManager.getLoginManager().disconnect(this._prepareForSleepId);
|
||||||
|
this._prepareForSleepId = 0;
|
||||||
|
|
||||||
if (this._settingsChangedSignalId != 0)
|
if (this._settingsChangedSignalId != 0)
|
||||||
this._settings.disconnect(this._settingsChangedSignalId);
|
this._settings.disconnect(this._settingsChangedSignalId);
|
||||||
this._settingsChangedSignalId = 0;
|
this._settingsChangedSignalId = 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user