From 38d7a5d39405816ed8cbcee3be67f5286b0fce48 Mon Sep 17 00:00:00 2001 From: Luke Barnard Date: Tue, 1 May 2018 11:50:14 +0100 Subject: [PATCH] Remove GroupStore listener when unmounting GroupPublicityToggle --- src/components/views/groups/GroupPublicityToggle.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/components/views/groups/GroupPublicityToggle.js b/src/components/views/groups/GroupPublicityToggle.js index 0dd35784a0..78522c2f55 100644 --- a/src/components/views/groups/GroupPublicityToggle.js +++ b/src/components/views/groups/GroupPublicityToggle.js @@ -40,7 +40,7 @@ export default React.createClass({ }, _initGroupStore: function(groupId) { - GroupStore.registerListener(groupId, () => { + this._groupStoreToken = GroupStore.registerListener(groupId, () => { this.setState({ isGroupPublicised: GroupStore.getGroupPublicity(groupId), ready: GroupStore.isStateReady(groupId, GroupStore.STATE_KEY.Summary), @@ -48,6 +48,10 @@ export default React.createClass({ }); }, + componentWillUnmount() { + if (this._groupStoreToken) this._groupStoreToken.unregister(); + }, + _onPublicityToggle: function(e) { e.stopPropagation(); this.setState({