blend_fuzzer.cc 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  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 *pix1, *pix2, *return_pix, *pix_copy;
  9. for(int i=0; i<10; i++) {
  10. pix1 = pixRead("../test8.jpg");
  11. pix_copy = pixCopy(NULL, pixs_payload);
  12. return_pix = pixBlend(pix_copy, pix1, i, i, i);
  13. pixDestroy(&pix_copy);
  14. pixDestroy(&pix1);
  15. pixDestroy(&return_pix);
  16. pix_copy = pixCopy(NULL, pixs_payload);
  17. return_pix = pixBlend(pix_copy, pix_copy, i, i, i);
  18. pixDestroy(&pix_copy);
  19. pixDestroy(&return_pix);
  20. }
  21. pix_copy = pixCopy(NULL, pixs_payload);
  22. return_pix = pixAddAlphaToBlend(pix_copy, 1.2, 1);
  23. pixDestroy(&pix_copy);
  24. pixDestroy(&return_pix);
  25. pix1 = pixRead("../test8.jpg");
  26. BOX *box1 = boxCreate(150, 130, 1500, 355);
  27. pix_copy = pixCopy(NULL, pixs_payload);
  28. pixBlendBackgroundToColor(pix_copy, pix1, box1, 123, 1.0, 5, 12);
  29. pixDestroy(&pix1);
  30. boxDestroy(&box1);
  31. pixDestroy(&pix_copy);
  32. pix1 = pixRead("../test8.jpg");
  33. pix_copy = pixCopy(NULL, pixs_payload);
  34. pixBlendCmap(pix_copy, pix1, 2, 3, 4);
  35. pixDestroy(&pix1);
  36. pixDestroy(&pix_copy);
  37. pix1 = pixRead("../test8.jpg");
  38. pix_copy = pixCopy(NULL, pixs_payload);
  39. pixBlendColorByChannel(pix_copy, pix_copy, pix1, 200, 200, 0.7, 0.8, 0.9, 1, 5);
  40. pixDestroy(&pix1);
  41. pixDestroy(&pix_copy);
  42. pix1 = pixRead("../test8.jpg");
  43. pix_copy = pixCopy(NULL, pixs_payload);
  44. pixBlendGrayAdapt(pix_copy, pix_copy, pix1, 2, 3, 0.8, 1);
  45. pixDestroy(&pix1);
  46. pixDestroy(&pix_copy);
  47. pix1 = pixRead("../test8.jpg");
  48. pix_copy = pixCopy(NULL, pixs_payload);
  49. pixBlendGrayInverse(pix_copy, pix_copy, pix1, 1, 2, 0.7);
  50. pixDestroy(&pix1);
  51. pixDestroy(&pix_copy);
  52. pix1 = pixRead("../test8.jpg");
  53. pix_copy = pixCopy(NULL, pixs_payload);
  54. pixBlendHardLight(pix_copy, pix_copy, pix1, 1, 2, 0.8);
  55. pixDestroy(&pix1);
  56. pixDestroy(&pix_copy);
  57. pix1 = pixRead("../test8.jpg");
  58. pix_copy = pixCopy(NULL, pixs_payload);
  59. return_pix = pixFadeWithGray(pix_copy, pix1, 1.0, L_BLEND_TO_WHITE);
  60. pixDestroy(&pix1);
  61. pixDestroy(&pix_copy);
  62. pixDestroy(&return_pix);
  63. pix_copy = pixCopy(NULL, pixs_payload);
  64. pixLinearEdgeFade(pix_copy, L_FROM_LEFT, L_BLEND_TO_WHITE, 1.0, 0.8);
  65. pixDestroy(&pix_copy);
  66. pix_copy = pixCopy(NULL, pixs_payload);
  67. pixMultiplyByColor(pix_copy, pix_copy, NULL, 2);
  68. pixDestroy(&pix_copy);
  69. pix_copy = pixCopy(NULL, pixs_payload);
  70. return_pix = pixSetAlphaOverWhite(pix_copy);
  71. pixDestroy(&pix_copy);
  72. pixDestroy(&return_pix);
  73. pixDestroy(&pixs_payload);
  74. return 0;
  75. }