Hi,
I haven’t checked this throughly but with Xcode sanitizer I’m able to trigger undefined behaviour by overflowing in:
ImageConvolutionKernel::applyToImage
(juce_ImageConvolutionKernel.cpp:162)
There is a check for sy
to be >= 0
but none for sx
.
So you could have situations like:
x = 0; size = 20;
int sx = x - (size >> 1);
const uint8* src = srcData.getPixelPointer (sx, sy);
Shouldn’t it also continue/skip those non-existing pixel pointers (getPixelPointer explicitly says it won’t check given values and it is inline…)?