anchor.diff:          if PHeader.LinkFlag in [AB_TAR_LF_LONGNAME] then
           begin  { Delete this Header, and the data Headers. }
             FoundMetaDataHeader := True;
  -          TotalOldNumHeaders := Ceil( OctalToInt64(PHeader.Size, SizeOf(PHeader.Size)) / AB_TAR_RECORDSIZE);
  +          TotalOldNumHeaders := Ceil( OctalToInt(PHeader.Size, SizeOf(PHeader.Size)) / AB_TAR_RECORDSIZE);
             for J := TotalOldNumHeaders downto 0 do
             begin { Note 0 will delete the Long Link MD Header }
  -            freemem(FTarHeaderList.Items[I+J]); { This list holds PAbTarHeaderRec's }
  +            FreeMem(FTarHeaderList.Items[I+J]); { This list holds PAbTarHeaderRec's }
               FTarHeaderList.Delete(I+J);
               FTarHeaderTypeList.Delete(I+J);
             end;
  
positive.code: 
    try {NewStream/OutTarHelp}
      { create helper }
      NewStream.SwapFileDirectory := ExtractFilePath(AbGetTempFile(FTempDir, False));
  
      {build new archive from existing archive}
      for i := 0 to pred(Count) do begin
  
negative.code:         if PHeader.LinkFlag in [AB_TAR_LF_LONGLINK] then
          begin  { Delete this Header, and the data Headers. }
            FoundMetaDataHeader := True;
            TotalOldNumHeaders := Ceil( OctalToInt(PHeader.Size, SizeOf(PHeader.Size)) / AB_TAR_RECORDSIZE);
            for J := TotalOldNumHeaders downto 0 do
            begin { Note 0 will delete the Long Link MD Header }
              FreeMem(FTarHeaderList.Items[I+J]); { This list holds PAbTarHeaderRec's }
              FTarHeaderList.Delete(I+J);
              FTarHeaderTypeList.Delete(I+J);
            end;
  