mirror of https://github.com/vector-im/riot-web
Clear the login busy state after .well-known discovery
This always clear the login busy state after .well-known discovery without waiting for the resulting server config. This is important for the case where the HS that a full MXID resolves to matches the default HS, as without it we'd be stuck in a busy state forever. Fixes https://github.com/vector-im/riot-web/issues/10014pull/21833/head
parent
f07aff2816
commit
21099052fc
|
@ -241,7 +241,7 @@ module.exports = React.createClass({
|
||||||
const doWellknownLookup = username[0] === "@";
|
const doWellknownLookup = username[0] === "@";
|
||||||
this.setState({
|
this.setState({
|
||||||
username: username,
|
username: username,
|
||||||
busy: doWellknownLookup, // unset later by the result of onServerConfigChange
|
busy: doWellknownLookup,
|
||||||
errorText: null,
|
errorText: null,
|
||||||
canTryLogin: true,
|
canTryLogin: true,
|
||||||
});
|
});
|
||||||
|
@ -250,6 +250,16 @@ module.exports = React.createClass({
|
||||||
try {
|
try {
|
||||||
const result = await AutoDiscoveryUtils.validateServerName(serverName);
|
const result = await AutoDiscoveryUtils.validateServerName(serverName);
|
||||||
this.props.onServerConfigChange(result);
|
this.props.onServerConfigChange(result);
|
||||||
|
// We'd like to rely on new props coming in via `onServerConfigChange`
|
||||||
|
// so that we know the servers have definitely updated before clearing
|
||||||
|
// the busy state. In the case of a full MXID that resolves to the same
|
||||||
|
// HS as Riot's default HS though, there may not be any server change.
|
||||||
|
// To avoid this trap, we clear busy here. For cases where the server
|
||||||
|
// actually has changed, `_initLoginLogic` will be called and manages
|
||||||
|
// busy state for its own liveness check.
|
||||||
|
this.setState({
|
||||||
|
busy: false,
|
||||||
|
});
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.error("Problem parsing URL or unhandled error doing .well-known discovery:", e);
|
console.error("Problem parsing URL or unhandled error doing .well-known discovery:", e);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue