Beispiel #1
0
void
FilePickerParent::SendFiles(const nsCOMArray<nsIDOMFile>& aDomfiles)
{
  ContentParent* parent = static_cast<ContentParent*>(Manager()->Manager());
  InfallibleTArray<PBlobParent*> files;

  for (unsigned i = 0; i < aDomfiles.Length(); i++) {
    BlobParent* blob = parent->GetOrCreateActorForBlob(aDomfiles[i]);
    if (blob) {
      files.AppendElement(blob);
    }
  }

  InputFiles infiles;
  infiles.filesParent().SwapElements(files);
  unused << Send__delete__(this, infiles, mResult);
}
void
FilePickerParent::SendFiles(const nsTArray<nsRefPtr<FileImpl>>& aFiles)
{
  nsIContentParent* parent = TabParent::GetFrom(Manager())->Manager();
  InfallibleTArray<PBlobParent*> files;

  for (unsigned i = 0; i < aFiles.Length(); i++) {
    nsRefPtr<File> file = new File(nullptr, aFiles[i]);
    BlobParent* blob = parent->GetOrCreateActorForBlob(file);
    if (blob) {
      files.AppendElement(blob);
    }
  }

  InputFiles infiles;
  infiles.filesParent().SwapElements(files);
  unused << Send__delete__(this, infiles, mResult);
}