Juce let libpng terminate host process in case of writting error

Hi Juce Team !

I hope you are all right !

I just found an historical Juce issue that let libpng terminate host process in case of writting error.

It can be reproduced trying to save an invalid/default juce::Image() to png.

I think potential write error can also be encounter with disk full or disk removal scenarii.

PNGImageFormat::decodeImage properly handle libpng exception system, but PNGImageFormat::writeImageToStream does not, and fallback to PNG_ABORT.

Here a fix proposal for the last juce developer branch that reproduce the symetrical PNGHelpers class design for PNGImageFormat::writeImageToStream implementation

juce_PNGLoader.cpp (22.2 KB)

Hoping this will helps

Best regards!

Thanks for the bug report, that should be fixed here:

2 Likes

Hi @reuk

Indeed your fix version works like a charm

Thanks for this

All the best.

1 Like