Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2d24536b authored by Kris Alder's avatar Kris Alder Committed by Automerger Merge Worker
Browse files

Merge "Refactored Extractor Fuzzer Plugins" am: 9c1b2c30

Change-Id: Ic3e1d5baf5711f7fb357aa477c997084ecfac60e
parents 15c5638e 9c1b2c30
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -187,3 +187,15 @@ void ExtractorFuzzerBase::seekAndExtractTrack(MediaTrackHelper* track,
  cTrack->stop(track);
  free(cTrack);
}

void ExtractorFuzzerBase::processData(const uint8_t* data, size_t size) {
  if (setDataSource(data, size)) {
    if (createExtractor()) {
      getExtractorDef();
      getMetadata();
      extractTracks();
      getTracksMetadata();
      seekAndExtractTracks();
    }
  }
}
+3 −11
Original line number Diff line number Diff line
@@ -46,17 +46,9 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
    return 0;
  }
  AacExtractor* extractor = new AacExtractor();
  if (!extractor) {
    return 0;
  }
  if (extractor->setDataSource(data, size)) {
    if (extractor->createExtractor()) {
      extractor->getExtractorDef();
      extractor->getMetadata();
      extractor->extractTracks();
      extractor->getTracksMetadata();
    }
  }
  if (extractor) {
    extractor->processData(data, size);
    delete extractor;
  }
  return 0;
}
+3 −11
Original line number Diff line number Diff line
@@ -46,17 +46,9 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
    return 0;
  }
  AmrExtractor* extractor = new AmrExtractor();
  if (!extractor) {
    return 0;
  }
  if (extractor->setDataSource(data, size)) {
    if (extractor->createExtractor()) {
      extractor->getExtractorDef();
      extractor->getMetadata();
      extractor->extractTracks();
      extractor->getTracksMetadata();
    }
  }
  if (extractor) {
    extractor->processData(data, size);
    delete extractor;
  }
  return 0;
}
+3 −11
Original line number Diff line number Diff line
@@ -46,17 +46,9 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
    return 0;
  }
  FlacExtractor* extractor = new FlacExtractor();
  if (!extractor) {
    return 0;
  }
  if (extractor->setDataSource(data, size)) {
    if (extractor->createExtractor()) {
      extractor->getExtractorDef();
      extractor->getMetadata();
      extractor->extractTracks();
      extractor->getTracksMetadata();
    }
  }
  if (extractor) {
    extractor->processData(data, size);
    delete extractor;
  }
  return 0;
}
+2 −0
Original line number Diff line number Diff line
@@ -70,6 +70,8 @@ class ExtractorFuzzerBase {

  void seekAndExtractTracks();

  void processData(const uint8_t* data, size_t size);

 protected:
  class BufferSource : public DataSource {
   public:
Loading