gdm: Fail and restart verification on conversation stopped for all services
Currently when the foreground service conversation stops we increase the verification failed count and try to start it again, while if a background service has been stopped we just ignore it. This is causing a various number of issues, for example in the case of the fingerprint authentication service, it is normally configured to die after a timeout, and we end up never restarting it (while the UI still keeps showing to the user the message about swipe/touch the device). So, in such case let's just consider it a "soft" verification failure that doesn't increase the failures count but will cause us to reset the UI and try to restart the authentication (and so the affected service). Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1652>
This commit is contained in:
parent
ed1ace1d99
commit
7a2e629bd0
@ -677,10 +677,10 @@ var ShellUserVerifier = class {
|
|||||||
// if the password service fails, then cancel everything.
|
// if the password service fails, then cancel everything.
|
||||||
// But if, e.g., fingerprint fails, still give
|
// But if, e.g., fingerprint fails, still give
|
||||||
// password authentication a chance to succeed
|
// password authentication a chance to succeed
|
||||||
if (this.serviceIsForeground(serviceName)) {
|
if (this.serviceIsForeground(serviceName))
|
||||||
this._failCounter++;
|
this._failCounter++;
|
||||||
|
|
||||||
this._verificationFailed(serviceName, true);
|
this._verificationFailed(serviceName, true);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
};
|
};
|
||||||
Signals.addSignalMethods(ShellUserVerifier.prototype);
|
Signals.addSignalMethods(ShellUserVerifier.prototype);
|
||||||
|
Loading…
Reference in New Issue
Block a user