From ce378a9803893a046e056296d49fa901cff03dde Mon Sep 17 00:00:00 2001 From: Elodie Lander Date: Sat, 15 Jul 2023 06:23:54 -0500 Subject: [PATCH] Correct completion token placement --- ghcide/src/Development/IDE/Core/Actions.hs | 5 +++-- ghcide/src/Development/IDE/Types/HscEnvEq.hs | 9 +++++---- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/ghcide/src/Development/IDE/Core/Actions.hs b/ghcide/src/Development/IDE/Core/Actions.hs index f628a3110bf..e04e94a67ad 100644 --- a/ghcide/src/Development/IDE/Core/Actions.hs +++ b/ghcide/src/Development/IDE/Core/Actions.hs @@ -72,8 +72,9 @@ lookupMod HieDbWriter{indexQueue} hieFile moduleName uid _boot = MaybeT $ do moduleSource <- hie_hs_src <$> loadHieFile (mkUpdater nc) hieFile BS.writeFile writeOutPath moduleSource liftIO $ atomically $ - unGetTQueue indexQueue $ \withHieDb -> withHieDb $ \db -> do - HieDb.addSrcFile db hieFile writeOutPath False + unGetTQueue indexQueue $ \withHieDb -> do + withHieDb $ \db -> + HieDb.addSrcFile db hieFile writeOutPath False putMVar completionToken () pure $ moduleUri where diff --git a/ghcide/src/Development/IDE/Types/HscEnvEq.hs b/ghcide/src/Development/IDE/Types/HscEnvEq.hs index 9befb13fe0a..1e858209ea7 100644 --- a/ghcide/src/Development/IDE/Types/HscEnvEq.hs +++ b/ghcide/src/Development/IDE/Types/HscEnvEq.hs @@ -15,7 +15,7 @@ module Development.IDE.Types.HscEnvEq import Control.Concurrent.Async (Async, async, waitCatch) import Control.Concurrent.MVar (newEmptyMVar, putMVar, readMVar) import Control.Concurrent.STM (atomically) -import Control.Concurrent.STM.TQueue (unGetTQueue) +import Control.Concurrent.STM.TQueue (writeTQueue) import Control.Concurrent.Strict (modifyVar, newVar) import Control.DeepSeq (force) import Control.Exception (evaluate, mask, throwIO) @@ -133,9 +133,10 @@ newHscEnvEqWithImportPaths envImportPaths recorder se hscEnv deps = do deleteMissingDependencySources :: IO () deleteMissingDependencySources = do completionToken <- newEmptyMVar - atomically $ unGetTQueue (indexQueue $ hiedbWriter se) $ - \withHieDb -> withHieDb $ \db -> do - removeDependencySrcFiles db + atomically $ writeTQueue (indexQueue $ hiedbWriter se) $ + \withHieDb -> do + withHieDb $ \db -> + removeDependencySrcFiles db putMVar completionToken () readMVar completionToken indexPackageHieFiles :: Package -> [Module] -> IO ()