summaryrefslogtreecommitdiff
path: root/internal/lsp/chat_commands.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/lsp/chat_commands.go')
-rw-r--r--internal/lsp/chat_commands.go4
1 files changed, 3 insertions, 1 deletions
diff --git a/internal/lsp/chat_commands.go b/internal/lsp/chat_commands.go
index 480643a..eb38ba0 100644
--- a/internal/lsp/chat_commands.go
+++ b/internal/lsp/chat_commands.go
@@ -48,7 +48,9 @@ func (c *chatService) handleReloadCommand() chatCommandResult {
}
loadOpts := s.configLoadOpts
loadOpts.IgnoreEnv = true
- changes, err := s.configStore.Reload(s.logger, loadOpts)
+ // Tie the reload's blocking file reads to the server context so an
+ // in-progress reload is abandoned if the server is shutting down.
+ changes, err := s.configStore.Reload(s.serverCtx, s.logger, loadOpts)
if err != nil {
s.logger.Printf("config reload failed: %v", err)
return chatCommandResult{message: fmt.Sprintf("Reload failed: %v", err)}