Crash with AUv2 in Logic X 10.7.9 on some systems

So far two users reported a problem with one of our plugins on macOS with Logic 10.7.9. Clearing the AU cache also does not resolve the problem. I wasn’t able to reproduce this on all our test systems.

The plugin passes the AU validation but the plugin crashes when the user wants to instantiate it in Logic 10.7.9. The user gets the message An Audio Unit plug-in reported a problem which might cause the system to become unstable… Looks like only one of our AUv2 plugins is affected. The problem does not happen in Logic 10.7.6. It also works in other hosts.

My first Idea was that the problem is located in the UI. But it looks like the plugin already crashes before the AudioProcessor constructor is called.

Another guess is that some objects located on the stack do some action when allocating the memory, which leads to the crash. But I wasn’t able to find something so far.

The channel layout looks like this:

MyAudoProcessor::MyAudoProcessor()
    : AudioProcessor (BusesProperties()
        .withOutput ("Output", AudioChannelSet::stereo(), true))

and

bool MyAudoProcessor::isBusesLayoutSupported (const BusesLayout& layouts) const
{
    return layouts.getMainOutputChannels() == 2;
}

Here is the stack trace:

Thread 0 Crashed::  Dispatch queue: com.apple.main-thread
0   libsystem_platform.dylib      	    0x7ff81e464189 _platform_memmove$VARIANT$Haswell + 41
1   AVFAudio                      	    0x7ffa3b9e1f1a -[AVAudioChannelLayout initWithLayout:] + 120
2   AVFAudio                      	    0x7ffa3b9e2396 +[AVAudioChannelLayout layoutWithLayout:] + 40
3   AudioToolboxCore              	    0x7ff81fa60a44 -[AUV2BridgeBus format] + 453
4   com.apple.audio.InfoHelper    	       0x1057434e8 0x10573d000 + 25832
5   com.apple.audio.InfoHelper    	       0x105742dc3 0x10573d000 + 24003
6   AudioToolboxCore              	    0x7ff81fa0c10c +[AUAudioUnit instantiateWithComponentDescription:options:connectionProvider:completionHandler:] + 1529
7   AudioToolboxCore              	    0x7ff81fa0cb15 +[AUAudioUnit instantiateWithComponentDescription:options:completionHandler:] + 78
8   com.apple.audio.InfoHelper    	       0x1057417d9 0x10573d000 + 18393
9   Foundation                    	    0x7ff81f3806f0 __NSXPCCONNECTION_IS_CALLING_OUT_TO_EXPORTED_OBJECT_S2__ + 10
10  Foundation                    	    0x7ff81f37f6ce -[NSXPCConnection _decodeAndInvokeMessageWithEvent:flags:] + 2289
11  Foundation                    	    0x7ff81f3362ee message_handler + 206
12  libxpc.dylib                  	    0x7ff81e190ae0 _xpc_connection_call_event_handler + 56
13  libxpc.dylib                  	    0x7ff81e18f8c6 _xpc_connection_mach_event + 1413
14  libdispatch.dylib             	    0x7ff81e29a3b1 _dispatch_client_callout4 + 9
15  libdispatch.dylib             	    0x7ff81e2b3041 _dispatch_mach_msg_invoke + 445
16  libdispatch.dylib             	    0x7ff81e2a01cd _dispatch_lane_serial_drain + 342
17  libdispatch.dylib             	    0x7ff81e2b3b77 _dispatch_mach_invoke + 484
18  libdispatch.dylib             	    0x7ff81e2a6bb1 _dispatch_main_queue_drain + 744
19  libdispatch.dylib             	    0x7ff81e2a68bb _dispatch_main_queue_callback_4CF + 31
20  CoreFoundation                	    0x7ff81e555f17 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 9
21  CoreFoundation                	    0x7ff81e516faf __CFRunLoopRun + 2771
22  CoreFoundation                	    0x7ff81e515e1c CFRunLoopRunSpecific + 562

I wonder if someone has an idea what the problem could be.