From 136e877ee62c4be19f88bb02c6567e7e71aa5031 Mon Sep 17 00:00:00 2001 From: David Bolack Date: Mon, 12 Aug 2024 21:42:25 -0500 Subject: [PATCH 1/3] Prevent loading of undefined renderer or theme themebundle. --- client/homebrew/pages/homePage/homePage.jsx | 4 +++- client/homebrew/pages/sharePage/sharePage.jsx | 4 +++- server/app.js | 2 -- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/client/homebrew/pages/homePage/homePage.jsx b/client/homebrew/pages/homePage/homePage.jsx index 490b22596..65f7b9392 100644 --- a/client/homebrew/pages/homePage/homePage.jsx +++ b/client/homebrew/pages/homePage/homePage.jsx @@ -43,7 +43,9 @@ const HomePage = createClass({ editor : React.createRef(null), componentDidMount : function() { - fetchThemeBundle(this, this.props.brew.renderer, this.props.brew.theme); + if(this.props.brew.renderer || this.props.brew.theme){ + fetchThemeBundle(this, this.props.brew.renderer, this.props.brew.theme); + } }, handleSave : function(){ diff --git a/client/homebrew/pages/sharePage/sharePage.jsx b/client/homebrew/pages/sharePage/sharePage.jsx index 9b4f9b73d..2c7363f1c 100644 --- a/client/homebrew/pages/sharePage/sharePage.jsx +++ b/client/homebrew/pages/sharePage/sharePage.jsx @@ -32,7 +32,9 @@ const SharePage = createClass({ componentDidMount : function() { document.addEventListener('keydown', this.handleControlKeys); - fetchThemeBundle(this, this.props.brew.renderer, this.props.brew.theme); + if(this.props.brew.renderer || this.props.brew.theme){ + fetchThemeBundle(this, this.props.brew.renderer, this.props.brew.theme); + } }, componentWillUnmount : function() { diff --git a/server/app.js b/server/app.js index b419c5cea..a84ea568c 100644 --- a/server/app.js +++ b/server/app.js @@ -89,7 +89,6 @@ app.get('/', (req, res, next)=>{ title : 'Homepage', description : 'Homepage' }; - splitTextStyleAndMetadata(req.brew); return next(); }); @@ -500,7 +499,6 @@ app.use(async (err, req, res, next)=>{ pureError : getPureError(err) }; req.customUrl= '/error'; - const page = await renderPage(req, res); if(!page) return; res.send(page); From 6ec51bf7251f7137cbb7c83d704c3d6868a4bed3 Mon Sep 17 00:00:00 2001 From: David Bolack Date: Tue, 13 Aug 2024 12:09:26 -0500 Subject: [PATCH 2/3] Revert "Prevent loading of undefined renderer or theme themebundle." This reverts commit 136e877ee62c4be19f88bb02c6567e7e71aa5031. --- client/homebrew/pages/homePage/homePage.jsx | 4 +--- client/homebrew/pages/sharePage/sharePage.jsx | 4 +--- server/app.js | 2 ++ 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/client/homebrew/pages/homePage/homePage.jsx b/client/homebrew/pages/homePage/homePage.jsx index 65f7b9392..490b22596 100644 --- a/client/homebrew/pages/homePage/homePage.jsx +++ b/client/homebrew/pages/homePage/homePage.jsx @@ -43,9 +43,7 @@ const HomePage = createClass({ editor : React.createRef(null), componentDidMount : function() { - if(this.props.brew.renderer || this.props.brew.theme){ - fetchThemeBundle(this, this.props.brew.renderer, this.props.brew.theme); - } + fetchThemeBundle(this, this.props.brew.renderer, this.props.brew.theme); }, handleSave : function(){ diff --git a/client/homebrew/pages/sharePage/sharePage.jsx b/client/homebrew/pages/sharePage/sharePage.jsx index 2c7363f1c..9b4f9b73d 100644 --- a/client/homebrew/pages/sharePage/sharePage.jsx +++ b/client/homebrew/pages/sharePage/sharePage.jsx @@ -32,9 +32,7 @@ const SharePage = createClass({ componentDidMount : function() { document.addEventListener('keydown', this.handleControlKeys); - if(this.props.brew.renderer || this.props.brew.theme){ - fetchThemeBundle(this, this.props.brew.renderer, this.props.brew.theme); - } + fetchThemeBundle(this, this.props.brew.renderer, this.props.brew.theme); }, componentWillUnmount : function() { diff --git a/server/app.js b/server/app.js index a84ea568c..b419c5cea 100644 --- a/server/app.js +++ b/server/app.js @@ -89,6 +89,7 @@ app.get('/', (req, res, next)=>{ title : 'Homepage', description : 'Homepage' }; + splitTextStyleAndMetadata(req.brew); return next(); }); @@ -499,6 +500,7 @@ app.use(async (err, req, res, next)=>{ pureError : getPureError(err) }; req.customUrl= '/error'; + const page = await renderPage(req, res); if(!page) return; res.send(page); From 1ed7e43db1122711c0cdfb97a4945a12fd162577 Mon Sep 17 00:00:00 2001 From: David Bolack Date: Tue, 13 Aug 2024 12:09:45 -0500 Subject: [PATCH 3/3] Implement G-Ambette's cleaner fix. --- shared/helpers.js | 1 + 1 file changed, 1 insertion(+) diff --git a/shared/helpers.js b/shared/helpers.js index e5c1b7769..ac684b06f 100644 --- a/shared/helpers.js +++ b/shared/helpers.js @@ -35,6 +35,7 @@ const printCurrentBrew = ()=>{ }; const fetchThemeBundle = async (obj, renderer, theme)=>{ + if(!renderer || !theme) return; const res = await request .get(`/api/theme/${renderer}/${theme}`) .catch((err)=>{