rorywalsh / CsoundUnity

GNU Lesser General Public License v2.1
70 stars 19 forks source link

Unity Crashes on Start #51

Closed composingcap closed 1 year ago

composingcap commented 1 year ago

Csound unity is causing Unity to crash on start when on Windows. I think this is a somewhat new development as a version I have from about a month ago seems to work fine.

Obtained 34 stack frames 0x00007ffbe0aa6d0c (csound64) csoundGetLibrarySymbol 0x00007ffbe095801c (csound64) csoundReset 0x00007ffbe0956d72 (csound64) csoundCreate 0x000001cfba46874a (Mono JIT Code) (wrapper managed-to-native) csoundcsharp.Csound6/NativeMethods:csoundCreate (intptr) 0x000001cfba467aab (Mono JIT Code) [CsoundUnityBridge.cs:136] CsoundUnityBridge:.ctor (string,System.Collections.Generic.List`1) 0x000001cfba46559b (Mono JIT Code) [CsoundUnity.cs:492] CsoundUnity:Awake () 0x000001d0a1469c08 (Mono JIT Code) (wrapper runtime-invoke) object:runtime_invoke_voidthis (object,intptr,intptr,intptr) 0x00007ffbde34e034 (mono-2.0-bdwgc) [mini-runtime.c:3445] mono_jit_runtime_invoke 0x00007ffbde28e724 (mono-2.0-bdwgc) [object.c:3064] do_runtime_invoke 0x00007ffbde28e8bc (mono-2.0-bdwgc) [object.c:3111] mono_runtime_invoke 0x00007ff71cc45b04 (Unity) scripting_method_invoke 0x00007ff71cc40724 (Unity) ScriptingInvocation::Invoke 0x00007ff71cc4080e (Unity) ScriptingInvocation::InvokeChecked 0x00007ff71ccb9c46 (Unity) SerializableManagedRef::CallMethod 0x00007ff71cc0df34 (Unity) MonoBehaviour::CallAwake 0x00007ff71cc0c7f5 (Unity) MonoBehaviour::AddToManager 0x00007ff71cc0d171 (Unity) MonoBehaviour::AwakeFromLoad 0x00007ff71ccfac5f (Unity) AwakeFromLoadQueue::InvokePersistentManagerAwake 0x00007ff71ccfb6cc (Unity) AwakeFromLoadQueue::PersistentManagerAwakeFromLoad 0x00007ff71ccfb833 (Unity) AwakeFromLoadQueue::PersistentManagerAwakeFromLoad 0x00007ff71c94e528 (Unity) LoadSceneOperation::CompleteAwakeSequence 0x00007ff71c94ef92 (Unity) LoadSceneOperation::CompletePreloadManagerLoadSceneEditor 0x00007ff71c94fb3b (Unity) LoadSceneOperation::IntegrateMainThread 0x00007ff71c953731 (Unity) PreloadManager::UpdatePreloadingSingleStep 0x00007ff71c953d0f (Unity) PreloadManager::WaitForAllAsyncOperationsToComplete 0x00007ff71db10202 (Unity) EditorSceneManager::RestoreSceneBackups 0x00007ff71d82d085 (Unity) PlayerLoopController::EnterPlayMode 0x00007ff71d83c3fa (Unity) PlayerLoopController::SetIsPlaying 0x00007ff71d83f71d (Unity) Application::TickTimer 0x00007ff71dc7cf2a (Unity) MainMessageLoop 0x00007ff71dc817fb (Unity) WinMain 0x00007ff71ef9398e (Unity) __scrt_common_main_seh 0x00007ffc72835550 (KERNEL32) BaseThreadInitThunk 0x00007ffc73a4485b (ntdll) RtlUserThreadStart

giovannibedetti commented 1 year ago

Same exact stack that was reported two weeks ago on discord. Have you pulled the latest? Rory pushed a fix a week ago on Master. Do you have Csound 6.18 installed? Btw the cause of the crash is that Csound is trying to load plugins from C:\Program Files\Csound6_x64\plugins64. Can you let me know what is the content of this folder on your end? Our fix should avoid that loading attempt, but if it's not working and it loads plugins that are built for a different version of Csound you will have this crash. See #33

giovannibedetti commented 1 year ago

@all-contributors add @composingcap for bug

allcontributors[bot] commented 1 year ago

@giovannibedetti

I've put up a pull request to add @composingcap! :tada:

composingcap commented 1 year ago

I have 6.16 installed. Let me try to install the most up-to-date version.

composingcap commented 1 year ago

Installing 6.18 fixed my issue- perhaps (if this was not Rory's fix) we should try to sniff out the version and through an error if it does not match. At minimum I think we should add a note in the docs and the package description.

giovannibedetti commented 1 year ago

Agree on the note in the docs, I'd leave the version check only as a last option: this should not happen, technically you don't need to have Csound installed.