There definitely seems to be something wrong happening with
juce::Image handling with CoreGraphics on iOS 12 (see this earlier thread).
Here are the clues I’ve gathered so far:
DropShadowby default (which can’t be disabled, BTW, unless touching the JUCE library code) which will make the crash happen. Easy to test: empty GUI project with a simple
Slideron which you call
setPopupDisplayEnabled(true, true, this). As soon as you drag the slider, the app crashes. Of course, the drop shadow compositing relies on
- Other users seem to have problems when using
juce::Imageby itself: well, my app does as well, but fortunately, only the
DropShadowcaused it to crash.
- When the problem happens, the debugger shows
- Also, when debugging using breakpoints and step by step program execution, I eventually encountered a different error message:
- There’s a pretty huge ongoing thread on Apple’s dev forum about it: https://forums.developer.apple.com/thread/94163
- A collective suspicion is that this happens in a low-memory situation. But this feels weird in the context of the very simple one-Slider GUI project test.
- When testing my app on iOS 12 on the simulator, it didn’t crash but the
Slider's popup display was drawn incorrectly and showed a highly recognizable corrupted graphic buffer.
Some ideas for further investigation:
- Try to figure out how exactly the crash is related to a
- Run a test repeatedly creating new images, at different speeds/sizes/etc?
- Any ideas or intuitions welcome