Cubase 8 and osx 10.9.5: Runtime Error cache_eraseImp_nolock


#1

A user reported following crash log and i have no idea what the problem can be. It already crashes while cubase loads the plugin at startup. 

I could not reproduce it on my system (10.10 and cubase 6). Hope someone here has an idea what the problem could be. I think it's something basic that went wrong. Any input is welcome!

 

edit: 64bit


Path:            /Applications/Cubase 8.app/Contents/MacOS/Cubase 8
Version:         8.0.10.427 (8.0.10.427)
OS Version:      Mac OS X 10.9.5 (13F1077)
Crashed Thread:  0  Dispatch queue: com.apple.main-thread
Crashed Thread:  0  Dispatch queue: com.apple.main-thread

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: EXC_I386_GPFLT

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libobjc.A.dylib                0x00007fff942da760 cache_eraseImp_nolock + 30
1   libobjc.A.dylib                0x00007fff942deda0 flushImps(objc_class*, objc_selector*, void (*)(), objc_selector, void ()) + 319
2   libobjc.A.dylib                0x00007fff942deb66 _method_setImplementation(objc_class*, method_t*, void (*)()) + 116
3   libobjc.A.dylib                0x00007fff942dead9 method_setImplementation + 44
4   ch.toguaudioline.talsampler    0x0000000119abbc49 replaceMethod(objc_class*, objc_selector*, objc_object* (*)(objc_object, objc_selector, ...), objc_object* (*)(objc_object, objc_selector, ...)) + 34
5   ch.toguaudioline.talsampler    0x0000000119abb734 __ARCLite__load() + 767
6   libobjc.A.dylib                0x00007fff942d29ea call_load_methods + 745
7   libobjc.A.dylib                0x00007fff942d2500 load_images + 78


#2

is this crash only on the x64 version?

i've been having issues with similar stuff in the crash report (although not with JUCE). There is some kind of x64 OBJC runtime bug with method swizzling that crashes under certain obscure circumstances. I found that having the "Numerology4ReWireDevice.plugin" loaded causes Live x64 to crash when loading plugins built with the Steinberg VST-AU wrapper. It's not just "Numerology4ReWireDevice.plugin" that causes the crash though - I have seen conflicts with other things too. If I disable the objc swizzling in the VST-AU wrapper the crash does not occur. 

try googling cache_eraseImp_nolock to see a lot of similar crashes

 

* __ARCLite__load() is not present in my crash logs so it might be unrelated


#3

Thanks for the answer. It's the x64 version. I hope it's the same issue.

I'm no OSX guru. What do you mean with disable swizzling? Does this mean setting "Implicitly Link Objective-C Runtime Support" to "NO"?

 

Ok, i see that our plugin seems to swizzle a method. I just don't know why... it seems to be a part of JUCE, VST or of the Core Framework. How is it possible to disable it?


#4

Switching "Implicitly Link Objective-C Runtime Support" to "NO" fixed a similar issue with a user for me.


#5

I will try that in a first step. Thanks for the information. 

I will also try to disable the swizzling in the wapper. I'm not sure how to do this at the moment.


#6

Switching "Implicitly Link Objective-C Runtime Support" to "NO" fixed the issue for me too. Thanks for the input.


#7

this should be implemented in Introjucer


#8

It already is implemented:

http://www.juce.com/forum/topic/trouble-arclite-after-upgrading-xcode-452


#9

ahh, for some strange reason xcode shows any settings with the default value (with any project), mhhh will update XCode first (6.3.1 -> 6.4)