diff --git a/book/changelog.md b/book/changelog.md index 138329c3..10bc1688 100644 --- a/book/changelog.md +++ b/book/changelog.md @@ -107,7 +107,8 @@ This will be the first release of Grapevine since it was forked from Conduit [!54](https://gitlab.computer.surgery/matrix/grapevine/-/merge_requests/54), [!56](https://gitlab.computer.surgery/matrix/grapevine/-/merge_requests/56), [!69](https://gitlab.computer.surgery/matrix/grapevine/-/merge_requests/69), - [!102](https://gitlab.computer.surgery/matrix/grapevine/-/merge_requests/102)) + [!102](https://gitlab.computer.surgery/matrix/grapevine/-/merge_requests/102), + [!127](https://gitlab.computer.surgery/matrix/grapevine/-/merge_requests/127)) 5. Stop returning unnecessary member counts from `/_matrix/client/{r0,v3}/sync`. ([!12](https://gitlab.computer.surgery/matrix/grapevine/-/merge_requests/12)) 6. **BREAKING:** Allow federation by default. diff --git a/src/api/client_server/membership.rs b/src/api/client_server/membership.rs index f9ce1163..c07a07c9 100644 --- a/src/api/client_server/membership.rs +++ b/src/api/client_server/membership.rs @@ -1158,11 +1158,18 @@ async fn make_join_request( ) .await; - make_join_response_and_server = - make_join_response.map(|r| (r, remote_server.clone())); - - if make_join_response_and_server.is_ok() { - break; + match make_join_response { + Ok(r) => { + return Ok((r, remote_server.clone())); + } + Err(error) => { + warn!( + %error, + server = %remote_server, + "Remote join request failed", + ); + make_join_response_and_server = Err(error); + } } }