You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and dots ('.'), can be up to 35 characters long. Letters must be lowercase.
28 lines
502 B
28 lines
502 B
#ifdef __cplusplus |
|
extern "C" { |
|
#endif |
|
|
|
#define STB_IMAGE_IMPLEMENTATION |
|
|
|
#include "../stb_image.h" |
|
|
|
|
|
int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) |
|
{ |
|
int x, y, channels; |
|
|
|
if(!stbi_info_from_memory(data, size, &x, &y, &channels)) return 0; |
|
|
|
/* exit if the image is larger than ~80MB */ |
|
if(y && x > (80000000 / 4) / y) return 0; |
|
|
|
unsigned char *img = stbi_load_from_memory(data, size, &x, &y, &channels, 4); |
|
|
|
free(img); |
|
|
|
return 0; |
|
} |
|
|
|
#ifdef __cplusplus |
|
} |
|
#endif |