diff --git a/js/ui/unlockDialog.js b/js/ui/unlockDialog.js index 3ef6aa90f..370385abc 100644 --- a/js/ui/unlockDialog.js +++ b/js/ui/unlockDialog.js @@ -676,14 +676,16 @@ var UnlockDialog = GObject.registerClass({ } _ensureAuthPrompt() { - if (!this._authPrompt) { - this._authPrompt = new AuthPrompt.AuthPrompt(this._gdmClient, - AuthPrompt.AuthPromptMode.UNLOCK_ONLY); - this._authPrompt.connect('failed', this._fail.bind(this)); - this._authPrompt.connect('cancelled', this._fail.bind(this)); - this._authPrompt.connect('reset', this._onReset.bind(this)); - this._promptBox.add_child(this._authPrompt); - } + if (this._authPrompt) + return; + + this._authPrompt = new AuthPrompt.AuthPrompt(this._gdmClient, + AuthPrompt.AuthPromptMode.UNLOCK_ONLY); + this._authPrompt.connect('failed', this._fail.bind(this)); + this._authPrompt.connect('cancelled', this._fail.bind(this)); + this._authPrompt.connect('reset', this._onReset.bind(this)); + + this._promptBox.add_child(this._authPrompt); this._authPrompt.reset(); this._authPrompt.updateSensitivity(true); @@ -870,11 +872,7 @@ var UnlockDialog = GObject.registerClass({ } finish(onComplete) { - if (!this._authPrompt) { - onComplete(); - return; - } - + this._ensureAuthPrompt(); this._authPrompt.finish(onComplete); }