gdmUtil: factor out some duplicated code in beginVerification
The duplication makes the function look a lot more complicated than it actually is. This commit moves the common code to a new _startService function. https://bugzilla.gnome.org/show_bug.cgi?id=683437
This commit is contained in:
parent
07b57de03e
commit
fd11ad95f6
@ -317,11 +317,9 @@ const ShellUserVerifier = new Lang.Class({
|
||||
this._defaultService = PASSWORD_SERVICE_NAME;
|
||||
},
|
||||
|
||||
_beginVerification: function() {
|
||||
_startService: function(serviceName) {
|
||||
this._hold.acquire();
|
||||
|
||||
if (this._userName) {
|
||||
this._userVerifier.call_begin_verification_for_user(this._getForegroundService(),
|
||||
this._userVerifier.call_begin_verification_for_user(serviceName,
|
||||
this._userName,
|
||||
this._cancellable,
|
||||
Lang.bind(this, function(obj, result) {
|
||||
@ -336,42 +334,13 @@ const ShellUserVerifier = new Lang.Class({
|
||||
|
||||
this._hold.release();
|
||||
}));
|
||||
},
|
||||
|
||||
if (this._haveFingerprintReader) {
|
||||
this._hold.acquire();
|
||||
_beginVerification: function() {
|
||||
this._startService(this._getForegroundService());
|
||||
|
||||
this._userVerifier.call_begin_verification_for_user(FINGERPRINT_SERVICE_NAME,
|
||||
this._userName,
|
||||
this._cancellable,
|
||||
Lang.bind(this, function(obj, result) {
|
||||
try {
|
||||
obj.call_begin_verification_for_user_finish(result);
|
||||
} catch(e if e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED)) {
|
||||
return;
|
||||
} catch(e) {
|
||||
this._reportInitError('Failed to start fingerprint verification for user', e);
|
||||
return;
|
||||
}
|
||||
|
||||
this._hold.release();
|
||||
}));
|
||||
}
|
||||
} else {
|
||||
this._userVerifier.call_begin_verification(this._getForegroundService(),
|
||||
this._cancellable,
|
||||
Lang.bind(this, function(obj, result) {
|
||||
try {
|
||||
obj.call_begin_verification_finish(result);
|
||||
} catch(e if e.matches(Gio.IOErrorEnum, Gio.IOErrorEnum.CANCELLED)) {
|
||||
return;
|
||||
} catch(e) {
|
||||
this._reportInitError('Failed to start verification', e);
|
||||
return;
|
||||
}
|
||||
|
||||
this._hold.release();
|
||||
}));
|
||||
}
|
||||
if (this._userName && this._haveFingerprintReader)
|
||||
this._startService(FINGERPRINT_SERVICE_NAME);
|
||||
},
|
||||
|
||||
_onInfo: function(client, serviceName, info) {
|
||||
|
Loading…
Reference in New Issue
Block a user