Commit 7834e66 for novnc.com
commit 7834e667335fe33cc8f95f5694764514437aa69f
Author: 掌控-物质 <60373614+zk-wz@users.noreply.github.com>
Date: Sat May 23 16:32:46 2026 +0800
Workaround endless loading on Android Chrome
Replace top-level await with then() in browser.js, due to a bug in
chromium browsers.
https://github.com/novnc/noVNC/pull/2053
diff --git a/core/util/browser.js b/core/util/browser.js
index 12f47a7..c613a7e 100644
--- a/core/util/browser.js
+++ b/core/util/browser.js
@@ -182,7 +182,12 @@ async function _checkWebCodecsH264DecodeSupport() {
return true;
}
-supportsWebCodecsH264Decode = await _checkWebCodecsH264DecodeSupport();
+
+// FIXME: Avoid top-level await due to a Chromium bug where Decoder.flush()
+// can hang indefinitely on some Android devices, blocking module evaluation.
+_checkWebCodecsH264DecodeSupport().then((result) => {
+ supportsWebCodecsH264Decode = result;
+});
/*
* The functions for detection of platforms and browsers below are exported