I’ve just updated to Xcode 8.3.1 and I’m seeing an odd crash whenever the AudioToolbox AudioComponent methods are called. This basically happens if you use the CoreAudioFormat or any Audio Unit methods.
This is especially inconvenient seeing as I’m trying to debug Audio Unit plugin crashes at the moment…
I was wondering if anyone else is seeing the same thing or it’s a bodged upgrade my end?
To replicate, just launch the JUCE demo and go to the File Playback page.
Stack trace looks like this:
Thread 0 Crashed:: Juce Message Thread Dispatch queue: com.apple.main-thread
0 dyld 0x000000010173421a _dyld_debugger_notification + 0
1 dyld 0x0000000101733847 notifyGDB(dyld_image_states, unsigned int, dyld_image_info const*) + 40
2 dyld 0x0000000101729ef7 dyld::notifyBatchPartial(dyld_image_states, bool, char const* (*)(dyld_image_states, unsigned int, dyld_image_info const*), bool, bool) + 943
3 dyld 0x0000000101734d51 ImageLoader::link(ImageLoader::LinkContext const&, bool, bool, bool, ImageLoader::RPathChain const&, char const*) + 101
4 dyld 0x000000010172a82d dyld::preflight(ImageLoader*, ImageLoader::RPathChain const&, unsigned int) + 76
5 dyld 0x000000010173203f dlopen_preflight + 336
6 libdyld.dylib 0x00007fffbb934874 dlopen_preflight + 61
7 com.apple.CoreFoundation 0x00007fffa5c86b51 _CFBundleDlfcnPreflight + 129
8 com.apple.CoreFoundation 0x00007fffa5c86a35 CFBundlePreflightExecutable + 213
9 com.apple.audio.toolbox.AudioToolbox 0x00007fffa4b4125b AudioComponentPluginLoader::QueryBundle(__CFURL const*, std::__1::function<void (__CFURL const*, __CFBundle*, AudioComponentRegistrationInfo const&, __CFArray const*&)>) + 247
10 com.apple.audio.toolbox.AudioToolbox 0x00007fffa4b410fe AudioComponentPluginLoader::Scan1Bundle(__CFURL const*) + 52
11 com.apple.audio.toolbox.AudioToolbox 0x00007fffa49e83b2 AudioComponentPluginLoader::ScanForPluginsInDirectory(char const*) + 914
12 com.apple.audio.toolbox.AudioToolbox 0x00007fffa4b40ea1 AudioComponentPluginLoader::ScanForPlugins(unsigned int, bool) + 337
13 com.apple.audio.toolbox.AudioToolbox 0x00007fffa4b40215 AudioComponentPluginMgr::initLoader(unsigned int) + 73
14 com.apple.audio.toolbox.AudioToolbox 0x00007fffa4b3ffa5 AudioComponentPluginMgr::_prepare(unsigned int) + 911
15 com.apple.audio.toolbox.AudioToolbox 0x00007fffa49ee996 AudioComponentPluginMgr::FindNext(OpaqueAudioComponent*, AudioComponentDescription const&) + 112
16 com.apple.audio.toolbox.AudioToolbox 0x00007fffa4b3812e AudioComponentFindNext + 243
17 com.apple.audio.toolbox.AudioToolbox 0x00007fffa4a872e1 AudioFileFormatRegistry::AddComponentFormats() + 97
18 com.apple.audio.toolbox.AudioToolbox 0x00007fffa4a883d4 AudioFileFormatRegistry::GetAllExtensions(unsigned int*, void*) + 86
19 com.apple.audio.toolbox.AudioToolbox 0x00007fffa4a89b4e AudioFileGetGlobalInfo + 484
20 com.yourcompany.JuceDemo 0x00000001001a2f06 juce::(anonymous namespace)::findFileExtensionsForCoreAudioCodecs() + 70 (juce_CoreAudioFormat.cpp:38)
21 com.yourcompany.JuceDemo 0x00000001001a2e33 juce::CoreAudioFormat::CoreAudioFormat() + 51 (juce_CoreAudioFormat.cpp:499)
22 com.yourcompany.JuceDemo 0x000000010019bf45 juce::CoreAudioFormat::CoreAudioFormat() + 21 (juce_CoreAudioFormat.cpp:501)
23 com.yourcompany.JuceDemo 0x000000010019be10 juce::AudioFormatManager::registerBasicFormats() + 272 (juce_AudioFormatManager.cpp:66)
24 com.yourcompany.JuceDemo 0x00000001000158ab AudioPlaybackDemo::AudioPlaybackDemo() + 2891 (AudioPlaybackDemo.cpp:280)
I’m in the process of downloading Xcode 8.3 to see if that fixes it but I’d be interested to know if anyone else is seeing the same thing…