improve SharedArrayBuffer error message (fix #91)

This commit is contained in:
Alex Bates 2023-12-15 15:44:11 +00:00 committed by GitHub
parent e74d20a60a
commit 87a0471225
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -163,20 +163,23 @@ __ __ _ __ ____ __
}, },
getSharedArrayBufferMissingMessage: function () getSharedArrayBufferMissingMessage: function ()
{ {
const isCustom = window.location.hostname !== "webvm.io";
const isSecureContext = window.isSecureContext;
const text = [ const text = [
"", "",
"", "",
color + "CheerpX could not start" + normal, color + "CheerpX could not start" + normal,
"", "",
"CheerpX depends on JavaScript's SharedArrayBuffer, that your browser", "CheerpX uses SharedArrayBuffer, which is not available right now.",
" does not support.",
"", "",
"SharedArrayBuffer is currently enabled by default on recent", !isSecureContext && " - This page is not in a secure context. Serve over HTTPS or WSS.",
" versions of Chrome, Edge, Firefox and Safari.", !isSecureContext && " " + underline + "https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts" + noral,
"", isCustom && " - The document is not cross-origin isolated.",
"", isCustom && " " + underline + "https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer#security_requirements" + normal,
"Give it a try from another browser!", " - Your browser might not support SharedArrayBuffer.",
] " Since 2022, all major browsers support this feature.",
" " + underline + "https://caniuse.com/sharedarraybuffer" + normal,
].filter(Boolean);
return text; return text;
}, },