anchor.diff:      r := self.FCurrentStream.Read(lvBuffer^, l);
       AddRef(lvBuffer);
       Dec(self.FCurrentStreamRemainSize, r);
  -    PostWSASendRequest(lvBuffer, r, False, BLOCK_STREAM_BUFFER_TAG);
  +    if not PostWSASendRequest(lvBuffer, r, False, BLOCK_STREAM_BUFFER_TAG) then
  +    begin
  +      ReleaseRef(lvBuffer);
  +    end;
     finally
       self.UnLock;
     end;
  
positive.code:   // 
    ClearTaskListRequest;
  
    FCurrentStreamEndAction := 0;
  
    inherited DoCleanUp;
  end;
  
negative.code:     lvSize := pvStream.Size;
      if lvRange.VEnd = 0 then
      begin
        lvRange.VEnd := lvRange.VStart + SEND_BLOCK_SIZE * 10 - 1;
      end;
  
      if (lvRange.VStart < lvSize) then
  