mirror of
https://github.com/vector-im/element-web.git
synced 2025-12-04 17:01:39 +01:00
Fix getOidcCallbackUrl for Element Desktop (#28521)
Got broken by a Chrome change Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
This commit is contained in:
parent
c2ce7dbc5e
commit
8df26a54cf
@ -474,10 +474,8 @@ export default class ElectronPlatform extends BasePlatform {
|
||||
const url = super.getOidcCallbackUrl();
|
||||
url.protocol = "io.element.desktop";
|
||||
// Trim the double slash into a single slash to comply with https://datatracker.ietf.org/doc/html/rfc8252#section-7.1
|
||||
// Chrome seems to have a strange issue where non-standard protocols prevent URL object mutations on pathname
|
||||
// field, so we cannot mutate `pathname` reliably and instead have to rewrite the href manually.
|
||||
if (url.pathname.startsWith("//")) {
|
||||
url.href = url.href.replace(url.pathname, url.pathname.slice(1));
|
||||
if (url.href.startsWith(`${url.protocol}://`)) {
|
||||
url.href = url.href.replace("://", ":/");
|
||||
}
|
||||
return url;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user