eh2k / vcvrack-fv1-emu

Spin Semi FV-1 DSP chip emulator | VCV Rack Module.
GNU General Public License v3.0
53 stars 6 forks source link

Crash on macOS with official VCVRack build #1

Closed cschol closed 5 years ago

cschol commented 5 years ago

Every time I try to load the plugin on macOS Rack crashes immediately.

Backtrace:

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib          0x00007fff68e20b66 __pthread_kill + 10
1   libsystem_pthread.dylib         0x00007fff68feb080 pthread_kill + 333
2   libsystem_c.dylib               0x00007fff68d7c1ae abort + 127
3   libsystem_c.dylib               0x00007fff68d441ac __assert_rtn + 320
4   plugin.dylib                    0x0000000111fdddfb FV1emu::load(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) + 30395
5   plugin.dylib                    0x0000000111fd50a3 FV1EmuModule::loadFx(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) + 99
6   plugin.dylib                    0x0000000111fd4c14 FV1EmuModule::FV1EmuModule() + 532
7   plugin.dylib                    0x0000000111fd4802 rack::Model* rack::Model::create<FV1EmuModule, FV1EmuModule::MyWidget, rack::ModelTag>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, rack::ModelTag)::TModel::createModuleWidget() + 34
8   com.vcvrack.rack                0x000000010bf7b98c virtual thunk to rack::ModelItem::onAction(rack::EventAction&) + 28
9   com.vcvrack.rack                0x000000010bf79799 rack::SearchModuleField::onKey(rack::EventKey&) + 889
10  com.vcvrack.rack                0x000000010bf565e1 rack::keyCallback(GLFWwindow*, int, int, int, int) + 65
11  com.vcvrack.rack                0x000000010bfadb27 -[GLFWContentView keyDown:] + 151
12  com.apple.AppKit                0x00007fff3ebca43d -[NSWindow(NSEventRouting) _reallySendEvent:isDelayedEvent:] + 5040
13  com.apple.AppKit                0x00007fff3ebc8c70 -[NSWindow(NSEventRouting) sendEvent:] + 497
14  com.apple.AppKit                0x00007fff3ea2a236 -[NSApplication(NSEvent) sendEvent:] + 2462
15  com.vcvrack.rack                0x000000010bfae542 -[GLFWApplication sendEvent:] + 98
16  com.vcvrack.rack                0x000000010bfb0477 _glfwPlatformPollEvents + 119
17  com.vcvrack.rack                0x000000010bf577e8 rack::windowRun() + 136
18  com.vcvrack.rack                0x000000010bf3cb0b main + 1243
19  com.vcvrack.rack                0x000000010bef2034 start + 52

UPDATE: The problem is that the fx folder is not included in the distribution of the plugin. The plugin crashes on first load if it can't load the files from the fx folder.

Please include the fx folder in the DISTRIBUTABLES environment variables in the Makefile and notify us in the community repository when a new version is available. We will disable the plugin until the update is available.

dizzisound commented 5 years ago

@cschol Made a quik test on Windows 7 x64, and there is the same issue. Manually placing the fx folder with its content in the plugin folder solves the issue, and the plugin loads into Rack. BUT: clicking on the fx_prev or fx_next buttons still crashes Rack. To solve this new issue, I had to download another fx program sourcefile from the http://www.spinsemi.com/programs.php repository. That is, it looks like at least TWO *.spn files should already be present in the distributed fxfolder, to avoid abrupt program exit. Hope this helps.

cschol commented 5 years ago

Good catch!

eh2k commented 5 years ago

Hello @cschol, @dizzisound Thank you for your feedback - I fixed this issue in the latest master..