From e91b76a4f035066ca856d9df5f3e6894cf6b0e29 Mon Sep 17 00:00:00 2001 From: Alf Eaton Date: Mon, 8 Jan 2024 12:07:28 +0000 Subject: [PATCH] Fix load metadata (#16417) GitOrigin-RevId: 26505e08ca9074238253dba08d0380422ae859be --- .../ide-react/context/metadata-context.tsx | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/services/web/frontend/js/features/ide-react/context/metadata-context.tsx b/services/web/frontend/js/features/ide-react/context/metadata-context.tsx index 2e7f666a42..6a5303ea0d 100644 --- a/services/web/frontend/js/features/ide-react/context/metadata-context.tsx +++ b/services/web/frontend/js/features/ide-react/context/metadata-context.tsx @@ -184,6 +184,12 @@ export const MetadataProvider: FC = ({ children }) => { useEventListener('editor:metadata-outdated', handleMetadataOutdated) + const permissionsRef = useRef(permissions) + + useEffect(() => { + permissionsRef.current = permissions + }, [permissions]) + useEffect(() => { const handleProjectJoined = ({ detail: [{ project }], @@ -195,7 +201,7 @@ export const MetadataProvider: FC = ({ children }) => { ) } window.setTimeout(() => { - if (permissions.write) { + if (permissionsRef.current.write) { loadProjectMetaFromServer() } }, 200) @@ -206,13 +212,7 @@ export const MetadataProvider: FC = ({ children }) => { return () => { eventEmitter.off('project:joined', handleProjectJoined) } - }, [ - eventEmitter, - loadProjectMetaFromServer, - permissions, - showGenericMessageModal, - t, - ]) + }, [eventEmitter, loadProjectMetaFromServer, showGenericMessageModal, t]) const value = useMemo( () => ({