anchor.diff:  procedure ZCompressBufferBuilder(pvBuilder:TDBufferBuilder);
   {$IFDEF POSIX}
   var
  -  lvBytes, lvOutBytes:TBytes;
  +  lvOutBuf: TBytes;
   {$ELSE}
   var
     lvInBuf: TBytes;
     lvOutBuf: Pointer;
     lvOutBytes: Integer;
  +var
  +  l: Integer;
   {$ENDIF}
  -var
  -  l: Integer;
  +
   begin
   {$IFDEF POSIX}
  -  error
  -//  SetLength(lvBytes, pvInStream.Size);
  -//  pvInStream.Position := 0;
  -//  pvInStream.Read(lvBytes[0], pvInStream.Size);
  -//  ZLib.ZCompress(lvBytes, lvOutBytes);                 // POSIXָֻ֧зʽѹ
  -//  pvOutStream.Size := Length(lvOutBytes);
  -//  pvOutStream.Position := 0;
  -//  pvOutStream.Write(lvOutBytes[0], Length(lvOutBytes));
  +  ZLib.ZCompress(pvBuilder.ToBytes, lvOutBuf);
  +  pvBuilder.Clear;
  +  pvBuilder.AppendBuffer(@lvOutBuf[0], length(lvOutBuf));
   {$ELSE}
     try
       {$if defined(NEWZLib)}
  
positive.code: procedure THttpRequest.DecodeContentAsFormUrlencoded({$IFDEF UNICODE}
      pvEncoding:TEncoding {$ELSE}pvUseUtf8Decode:Boolean{$ENDIF});
  var
    lvRawData : AnsiString;
    lvRawParams, s, lvName, lvValue:String;
    i:Integer;
    lvStrings:TStrings;
  
negative.code:   l: Integer;
  begin
  {$IFDEF POSIX}
    ZLib.ZCompress(pvBuilder.ToBytes, lvOutBytes);
  
    // ȡǰ2λʶͺλ2007ͨOK, deflateѹʽ)
    lvRefBuf := PByte(@lvOutBytes[0]);
    inc(lvRefBuf, 2);
  
    pvBuilder.Clear;
    pvBuilder.AppendBuffer(lvRefBuf, length(lvOutBytes) -2 -4);
  {$ELSE}
    try
      {$if defined(NEWZLib)}
  