BackgroundManager: don't destroy the newly created actor
Because we were setting this.background before calling .destroy(), the call that was meant to destroy the old background was actually destroying the new one! https://bugzilla.gnome.org/show_bug.cgi?id=722787
This commit is contained in:
parent
9d8f8277aa
commit
816f5162f9
@ -748,14 +748,16 @@ const BackgroundManager = new Lang.Class({
|
||||
time: FADE_ANIMATION_TIME,
|
||||
transition: 'easeOutQuad',
|
||||
onComplete: Lang.bind(this, function() {
|
||||
if (this._newBackground == newBackground) {
|
||||
this.background = newBackground;
|
||||
this._newBackground = null;
|
||||
} else {
|
||||
if (this._newBackground != newBackground) {
|
||||
/* Not interesting, we queued another load */
|
||||
newBackground.actor.destroy();
|
||||
return;
|
||||
}
|
||||
|
||||
this.background.actor.destroy();
|
||||
this.background = newBackground;
|
||||
this._newBackground = null;
|
||||
|
||||
this.emit('changed');
|
||||
})
|
||||
});
|
||||
|
Loading…
Reference in New Issue
Block a user