Skip to content

Commit

Permalink
hopefully fix bootloops
Browse files Browse the repository at this point in the history
  • Loading branch information
AAGaming00 committed Aug 3, 2024
1 parent c168853 commit cc8aafb
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 2 deletions.
2 changes: 1 addition & 1 deletion backend/decky_loader/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -207,7 +207,7 @@ async def inject_javascript(self, tab: Tab, first: bool=False, request: Request|
await tab.close_websocket()
self.js_ctx_tab = None
await restart_webhelper()
await sleep(5)
await sleep(1) # To give CEF enough time to close down the websocket
return # We'll catch the next tab in the main loop
await tab.evaluate_js("try{if (window.deckyHasLoaded){setTimeout(() => SteamClient.Browser.RestartJSContext(), 100)}else{window.deckyHasLoaded = true;(async()=>{try{await import('http://localhost:1337/frontend/index.js?v=%s')}catch(e){console.error(e)};})();}}catch(e){console.error(e)}" % (get_loader_version(), ), False, False, False)
except:
Expand Down
11 changes: 10 additions & 1 deletion frontend/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,19 @@ interface Window {

(async () => {
// Wait for main webpack chunks to definitely be loaded
console.debug('[Decky:Boot] Waiting for main Webpack chunks...');
console.time('[Decky:Boot] Waiting for main Webpack chunks...');
while (!window.webpackChunksteamui || window.webpackChunksteamui.length < 8) {
await new Promise((r) => setTimeout(r, 10)); // Can't use DFL sleep here.
}
console.timeEnd('[Decky:Boot] Waiting for main Webpack chunks...')

// Wait for the React root to be mounted
console.time('[Decky:Boot] Waiting for React root mount...');
let root;
while (!(root = document.getElementById("root")) || !(root as any)[Object.keys(root).find((k) => k.startsWith('__reactContainer$')) as string]) {
await new Promise((r) => setTimeout(r, 10)); // Can't use DFL sleep here.
}
console.timeEnd('[Decky:Boot] Waiting for React root mount...');

if (!window.SP_REACT) {
console.debug('[Decky:Boot] Setting up Webpack & React globals...');
Expand Down

0 comments on commit cc8aafb

Please sign in to comment.