endSessionDialog: squash "reference to undefined property" warning
dialogContent is set to one of the elements of the list DialogContent, but not all of those have a checkBoxText property. When logging out (as opposed to shutting down), this causes a warning: JS WARNING: [resource:///org/gnome/shell/ui/endSessionDialog.js 763]: reference to undefined property "checkBoxText" (The line number corresponds to this line in 3.28.3.) The warning is apparently not triggered if the undefined property is used as part of a boolean expression: gjs> var x = {}; gjs> x.a; typein:2:1 strict warning: reference to undefined property "a" gjs> if (x.b) { log('oh no'); } gjs> x.c || '' "" _setCheckBoxLabel() just checks the truthiness of its 'text' argument, and the empty string is false-y, so passing '' rather than undefined has no functional effect.
This commit is contained in:
parent
fb39cc5952
commit
0892b5dcdb
@ -727,7 +727,7 @@ var EndSessionDialog = new Lang.Class({
|
|||||||
let updatePrepared = this._pkOfflineProxy.UpdatePrepared;
|
let updatePrepared = this._pkOfflineProxy.UpdatePrepared;
|
||||||
let updatesAllowed = this._updatesPermission && this._updatesPermission.allowed;
|
let updatesAllowed = this._updatesPermission && this._updatesPermission.allowed;
|
||||||
|
|
||||||
_setCheckBoxLabel(this._checkBox, dialogContent.checkBoxText);
|
_setCheckBoxLabel(this._checkBox, dialogContent.checkBoxText || '');
|
||||||
this._checkBox.actor.visible = (dialogContent.checkBoxText && updatePrepared && updatesAllowed);
|
this._checkBox.actor.visible = (dialogContent.checkBoxText && updatePrepared && updatesAllowed);
|
||||||
this._checkBox.actor.checked = (updatePrepared && updateTriggered);
|
this._checkBox.actor.checked = (updatePrepared && updateTriggered);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user