AVAudioSession Notify Thread Crash

I’m getting the following crash when using AVAudioSession with AVAudioEngine. What I don’t understand is why InterruptionListener is listed twice in the stack trace. Does this mean it’s somehow being called again before it has returned? Is this likely to be a concurrency issue?

Crashed: AVAudioSession Notify Thread
0  libEmbeddedSystemAUs.dylib      0x1dbc3333c InterruptionListener(void*, unsigned int, unsigned int, void const*)
1  libEmbeddedSystemAUs.dylib      0x1dbc33270 InterruptionListener(void*, unsigned int, unsigned int, void const*)
2  AudioToolbox                    0x1c86e6484 AudioSessionPropertyListeners::CallPropertyListeners(unsigned int, unsigned int, void const*) + 596
3  AudioToolbox                    0x1c8740798 HandleAudioSessionCFTypePropertyChangedMessage(unsigned int, unsigned int, void*, unsigned int) + 1144
4  AudioToolbox                    0x1c873fec0 ProcessDeferredMessage(unsigned int, __CFData const*, unsigned int, unsigned int) + 2452
5  AudioToolbox                    0x1c873f17c ASCallbackReceiver_AudioSessionPingMessage + 632
6  AudioToolbox                    0x1c87ad398 _XAudioSessionPingMessage + 44
7  libAudioToolboxUtility.dylib    0x1c8840430 mshMIGPerform + 264
8  CoreFoundation                  0x1bd42b174 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 56
9  CoreFoundation                  0x1bd42a880 __CFRunLoopDoSource1 + 444
10 CoreFoundation                  0x1bd425634 __CFRunLoopRun + 1888
11 CoreFoundation                  0x1bd424ba8 CFRunLoopRunSpecific + 424
12 AVFAudio                        0x1ca1f4a2c GenericRunLoopThread::Entry(void*) + 156
13 AVFAudio                        0x1ca2457a0 CAPThread::Entry(CAPThread*) + 204
14 libsystem_pthread.dylib         0x1bd1c2d98 _pthread_start + 156
15 libsystem_pthread.dylib         0x1bd1c674c thread_start + 8
AVAudioSession Notify Thread Crash
 
 
Q