-
-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Segmentation fault: 11 when closing other MIDI-Applications (like Koala-Sampler or DLS-Midi Synth) #5
Comments
thirtythreeforty
added a commit
to thirtythreeforty/jazz-midi
that referenced
this issue
Oct 10, 2023
The pthread and lock are never created if the "if" in the constructor fails, and the members are never initialized. But the destructor unconditionally destroys them. Fix this by adding a guard flag. This fixes a segfault I encountered on Arch with Pipewire as the ALSA server. Thread 1 "node" received signal SIGSEGV, Segmentation fault. 0x00007ffff428aebd in pthread_cancel () from /usr/bin/../lib/libc.so.6 (gdb) bt #0 0x00007ffff428aebd in pthread_cancel () from /usr/bin/../lib/libc.so.6 jazz-soft#1 0x00007ffff3b773ff in CMidiInHW::~CMidiInHW (this=0x55555572a430, __in_chrg=<optimized out>) at ../../midi/MidiALSA.cpp:366 jazz-soft#2 0x00007ffff3b77452 in CMidiInHW::~CMidiInHW (this=0x55555572a430, __in_chrg=<optimized out>) at ../../midi/MidiALSA.cpp:369 jazz-soft#3 0x00007ffff3b77105 in CMidiALSA::MidiInOpen[abi:cxx11](wchar_t const*, void*) (this=0x5555557b9880, name=0x5555556b3cf0 L"input", p=0x55555579e3a0) at ../../midi/MidiALSA.cpp:329 jazz-soft#4 0x00007ffff3b6f0c8 in MidiInOpen (env=0x55555579e410, args=0x7fffffff9e20) at ../jazz-midi.cpp:461 jazz-soft#5 0x00007ffff535bd33 in ?? () from /usr/bin/../lib/libnode.so.115 jazz-soft#6 0x00007ffff5840d97 in ?? () from /usr/bin/../lib/libnode.so.115 jazz-soft#7 0x00007ffff5841942 in v8::internal::Builtin_HandleApiCall(int, unsigned long*, v8::internal::Isolate*) () from /usr/bin/../lib/libnode.so.115 jazz-soft#8 0x00007ffff56cadf6 in ?? () from /usr/bin/../lib/libnode.so.115
This problem has also been reported in the WEBMIDI.js repo (which uses Details here: djipco/webmidi#391 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Node.js exits with a "segmentation fault: 11"-Error when closing a midi-application whose (virtual) midi-ports where already recognized by JZZ's watcher.
This happens when JZZ.js runs within my node application, then I open e.g. the DLS-Midi Synth App on Mac and the port 'DLS-MIDI-Synth Virtual In' shows up in JZZ's list of available ports. Now, when I close the DLS-Midi Synth App, my node application exits with the segmentation fault.
There seems to be a problem with the watcher and the MidiOutInfo method calling the compiled jazz-midi/bin/11_15/macos64/jazz.node gyp. And it seems to be related to virtual ports that weren't created by JZZ.
Reinstalling all node_modules didn't fix it.
Running node.js v16.1.0 on Mac 10.14.6. The jzz version is 1.3.8, the jazz-midi version is 1.7.5.
Here the log:
How to reproduce the issue:
Open a midi-application like Koala Sampler or DLS-Midi-Synth.
Call following node script:
The text was updated successfully, but these errors were encountered: