anchor.diff:  
   procedure TLspClient.ServerTerminated(Sender: TObject);
   begin
  -  FServerThread := nil;
     FStatus := lspInactive;
   end;
   
  
positive.code:   CheckCapability('completionProvider.resolveProvider', lspscCompletionResolve);
  end;
  
  
  procedure TLspClient.TerminateServer;
  var
    ServerThread: TThread;
  begin
    if Assigned(FServerThread) then
    begin
      ServerThread := FServerThread;
      fServerThread := nil;
      FStatus := lspInactive;
      ServerThread.Terminate;
    end;
  end;
  
  { TLspClientThread }
  
  procedure TLspServerThread.BeforeResume(const ProcessInfo: TProcessInformation;
  
negative.code: 
  constructor TSendDataThread.Create;
  begin
    FQueue := TThreadedQueue<TBytes>.Create(10, 100, 200);
    inherited Create(True);
  end;
  
  destructor TSendDataThread.Destroy;
  begin
    inherited;
    // FQueue needs to be freed after inherited Destoy
    FQueue.Free;
  end;
  
  procedure TSendDataThread.Execute;
  