grayquant_fuzzer.cc 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #include "leptfuzz.h"
  2. extern "C" int
  3. LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
  4. if(size<3) return 0;
  5. leptSetStdNullHandler();
  6. PIX *pixs_payload = pixReadMemSpix(data, size);
  7. if(pixs_payload == NULL) return 0;
  8. PIX *pix_pointer_payload, *return_pix;
  9. pix_pointer_payload = pixCopy(NULL, pixs_payload);
  10. return_pix = pixDitherTo2bpp(pix_pointer_payload, 1);
  11. pixDestroy(&pix_pointer_payload);
  12. pixDestroy(&return_pix);
  13. pix_pointer_payload = pixCopy(NULL, pixs_payload);
  14. return_pix = pixDitherToBinary(pix_pointer_payload);
  15. pixDestroy(&pix_pointer_payload);
  16. pixDestroy(&return_pix);
  17. pix_pointer_payload = pixCopy(NULL, pixs_payload);
  18. return_pix = pixGenerateMaskByBand(pix_pointer_payload, 1, 2, 1, 1);
  19. pixDestroy(&pix_pointer_payload);
  20. pixDestroy(&return_pix);
  21. pix_pointer_payload = pixCopy(NULL, pixs_payload);
  22. return_pix = pixGenerateMaskByBand32(pix_pointer_payload, 1, 1, 1, 0.0, 0.0);
  23. pixDestroy(&pix_pointer_payload);
  24. pixDestroy(&return_pix);
  25. pix_pointer_payload = pixCopy(NULL, pixs_payload);
  26. return_pix = pixGenerateMaskByDiscr32(pix_pointer_payload, 10, 10, L_MANHATTAN_DISTANCE);
  27. pixDestroy(&pix_pointer_payload);
  28. pixDestroy(&return_pix);
  29. const char *str = "45 75 115 185";
  30. pix_pointer_payload = pixCopy(NULL, pixs_payload);
  31. return_pix = pixThresholdGrayArb(pix_pointer_payload, str, 8, 0, 0, 0);
  32. pixDestroy(&pix_pointer_payload);
  33. pixDestroy(&return_pix);
  34. pixDestroy(&pixs_payload);
  35. return 0;
  36. }