From 23e854cb9176f7458fd7c2f66071486c21db239a Mon Sep 17 00:00:00 2001 From: Sorin Davidoi Date: Tue, 25 Jul 2017 01:05:44 +0200 Subject: [PATCH] fix(components/bundle): Exit early in load function (#4349) --- .../mastodon/features/ui/components/bundle.js | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/app/javascript/mastodon/features/ui/components/bundle.js b/app/javascript/mastodon/features/ui/components/bundle.js index 72798f69061..fc88e0c70f1 100644 --- a/app/javascript/mastodon/features/ui/components/bundle.js +++ b/app/javascript/mastodon/features/ui/components/bundle.js @@ -52,14 +52,8 @@ class Bundle extends React.Component { load = (props) => { const { fetchComponent, onFetch, onFetchSuccess, onFetchFail, renderDelay } = props || this.props; - this.setState({ mod: undefined }); onFetch(); - if (renderDelay !== 0) { - this.timestamp = new Date(); - this.timeout = setTimeout(() => this.setState({ forceRender: true }), renderDelay); - } - if (Bundle.cache[fetchComponent.name]) { const mod = Bundle.cache[fetchComponent.name]; @@ -68,6 +62,13 @@ class Bundle extends React.Component { return Promise.resolve(); } + this.setState({ mod: undefined }); + + if (renderDelay !== 0) { + this.timestamp = new Date(); + this.timeout = setTimeout(() => this.setState({ forceRender: true }), renderDelay); + } + return fetchComponent() .then((mod) => { Bundle.cache[fetchComponent.name] = mod;