diff options
Diffstat (limited to 'internal/lsp/chat_commands.go')
| -rw-r--r-- | internal/lsp/chat_commands.go | 4 |
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)} |
