anchor.diff:    //only do this if at least authenticated…
     if FState >= hsAuthenticated then
     begin
  -    FileSizeValue := FileSize(Filename);
  -    Log('Queueing song ' + ExtractFilename(Filename) + '…');
  -    SendString('q|' + ExtractFilename(Filename) + '|' +
  +    FileSizeValue := FileUtil.FileSize(Filename);
  +    Log('Queueing song ' + SysToUTF8(ExtractFilename(UTF8ToSys(Filename))) + '…');
  +    SendString('q|' + SysToUTF8(ExtractFilename(UTF8ToSys(Filename))) + '|' +
         IntToStr(FileSizeValue));
   
       Reply := ReceiveString();
  
positive.code:           else
              SizeToSend := FileSizeValue - i * BLOCK_SIZE;
  
            BlockRead(Fin, DataArray[0], SizeToSend);
            Socket.SendBuffer(@DataArray[0], SizeToSend);
  
            Percentage := Round((i * BLOCK_SIZE / FileSizeValue) * 100);
  
negative.code: function THGDClient.QueueSong(Filename: string): boolean;
  var
    Reply, Msg: string;
    Fin: THandle;
    DataArray: array of byte;
    FileSizeValue: int64;
    SizeToSend: int64;
  