File tree Expand file tree Collapse file tree 2 files changed +3
-2
lines changed
ghcide/src/Development/IDE Expand file tree Collapse file tree 2 files changed +3
-2
lines changed Original file line number Diff line number Diff line change @@ -762,12 +762,11 @@ delayedAction a = do
762
762
shakeRestart :: Recorder (WithPriority Log ) -> IdeState -> VFSModified -> String -> [DelayedAction () ] -> IO [Key ] -> IO ()
763
763
shakeRestart recorder IdeState {.. } vfs reason acts ioActionBetweenShakeSession = do
764
764
barrier <- newBarrier
765
- atomically $ writeTQueue (shakeOpQueue $ shakeExtras) $
765
+ atomically $ writeTQueue (shakeOpQueue $ shakeExtras) $ do
766
766
withMVar'
767
767
shakeSession
768
768
(\ runner -> do
769
769
(stopTime,() ) <- duration $ logErrorAfter 10 $ cancelShakeSession runner
770
- signalBarrier barrier ()
771
770
keys <- ioActionBetweenShakeSession
772
771
atomically $ modifyTVar' (dirtyKeys shakeExtras) $ \ x -> foldl' (flip insertKeySet) x keys
773
772
res <- shakeDatabaseProfile shakeDb
@@ -782,6 +781,7 @@ shakeRestart recorder IdeState{..} vfs reason acts ioActionBetweenShakeSession =
782
781
-- See https://github.com/haskell/ghcide/issues/79
783
782
(\ () -> do
784
783
(,() ) <$> newSession recorder shakeExtras vfs shakeDb acts reason)
784
+ signalBarrier barrier ()
785
785
waitBarrier barrier
786
786
where
787
787
logErrorAfter :: Seconds -> IO () -> IO ()
Original file line number Diff line number Diff line change @@ -341,6 +341,7 @@ defaultMain recorder Arguments{..} = withHeapStats (cmapWithPrio LogHeapStats re
341
341
}
342
342
caps = LSP. resClientCapabilities env
343
343
monitoring <- argsMonitoring
344
+
344
345
ide <- initialise
345
346
(cmapWithPrio LogService recorder)
346
347
argsDefaultHlsConfig
You can’t perform that action at this time.
0 commit comments