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. (cherry picked from commit 0892b5dcdb1e3323f953304df9c4c11cb0985d3f)
This commit is contained in:
parent
219118e633
commit
36f9dcd2bd
@ -760,7 +760,7 @@ var EndSessionDialog = new Lang.Class({
|
||||
let updatePrepared = this._pkOfflineProxy.UpdatePrepared;
|
||||
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.checked = (updatePrepared && updateTriggered);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user