From 5179221a08ecaa228e56ac660dee252eb34856ec Mon Sep 17 00:00:00 2001 From: Franz Liedke Date: Fri, 7 Feb 2020 12:17:11 +0100 Subject: [PATCH] Fix race condition in post preview The post composer could have been closed in between scheduling and executing the callback. Fixes flarum/org#58. Refs #1881. --- framework/core/js/src/forum/components/ReplyPlaceholder.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/framework/core/js/src/forum/components/ReplyPlaceholder.js b/framework/core/js/src/forum/components/ReplyPlaceholder.js index f4f366148..ad2bcc46e 100644 --- a/framework/core/js/src/forum/components/ReplyPlaceholder.js +++ b/framework/core/js/src/forum/components/ReplyPlaceholder.js @@ -52,6 +52,10 @@ export default class ReplyPlaceholder extends Component { // body with a preview. let preview; const updateInterval = setInterval(() => { + // Since we're polling, the composer may have been closed in the meantime, + // so we bail in that case. + if (!app.composer.component) return; + const content = app.composer.component.content(); if (preview === content) return;