Use the state variable for the password when deactivating

The Field is controlled, so we should be using the state. Otherwise the value is undefined, which means we don't supply the required auth.

Fixes https://github.com/vector-im/riot-web/issues/10302
Regressed in https://github.com/matrix-org/matrix-react-sdk/pull/3071
pull/21833/head
Travis Ralston 2019-07-10 11:26:09 -06:00 committed by J. Ryan Stinnett
parent 61e2d87152
commit 8459adb18d
1 changed files with 2 additions and 2 deletions

View File

@ -64,13 +64,13 @@ export default class DeactivateAccountDialog extends React.Component {
const auth = { const auth = {
type: 'm.login.password', type: 'm.login.password',
user: MatrixClientPeg.get().credentials.userId, user: MatrixClientPeg.get().credentials.userId,
password: this._passwordField.value, password: this.state.password,
}; };
await MatrixClientPeg.get().deactivateAccount(auth, this.state.shouldErase); await MatrixClientPeg.get().deactivateAccount(auth, this.state.shouldErase);
} catch (err) { } catch (err) {
let errStr = _t('Unknown error'); let errStr = _t('Unknown error');
// https://matrix.org/jira/browse/SYN-744 // https://matrix.org/jira/browse/SYN-744
if (err.httpStatus == 401 || err.httpStatus == 403) { if (err.httpStatus === 401 || err.httpStatus === 403) {
errStr = _t('Incorrect password'); errStr = _t('Incorrect password');
Velocity(this._passwordField, "callout.shake", 300); Velocity(this._passwordField, "callout.shake", 300);
} }