easyeffects icon indicating copy to clipboard operation
easyeffects copied to clipboard

memcpy(): easyeffects killed by SIGSEGV

Open Max-F-Helm opened this issue 3 years ago • 1 comments

EasyEffects Version

6.2.8-1.fc36

What package are you using?

Fedora

Distribution

Fedora 36

Describe the bug

Forwarded from https://bugzilla.redhat.com/show_bug.cgi?id=2121437

The application was open during several hibernations and one sleep of the OS. At some time changing the volume of an application by scrolling on the textfield stopped working. When I tried changing the volume of the application by focusing the textfield and holding the up-key it worked but EasyEffects crashed seconds in the action.

Expected Behavior

changing the volume with scroll should have worked or at least no crash

Debug Log

Some info generated by libreport
Truncated backtrace:
Thread no. 1 (10 frames)
 #0 memcpy at /usr/include/bits/string_fortified.h:29
 #1 spa_pod_builder_raw at ../spa/include/spa/pod/builder.h:150
 #2 spa_pod_builder_primitive at ../spa/include/spa/pod/builder.h:208
 #3 spa_pod_builder_id at ../spa/include/spa/pod/builder.h:245
 #4 spa_pod_builder_addv at ../spa/include/spa/pod/builder.h:629
 #5 spa_pod_builder_add at ../spa/include/spa/pod/builder.h:645
 #6 port_marshal_enum_params at ../src/modules/module-protocol-native/protocol-native.c:1455
 #7 (anonymous namespace)::on_node_info at ../src/pipe_manager.cpp:401
 #8 node_demarshal_info at ../src/modules/module-protocol-native/protocol-native.c:1151
 #9 process_remote at ../src/modules/module-protocol-native.c:915

Additional Information

full stack-trace: see https://bugzilla-attachments.redhat.com/attachment.cgi?id=1907548&t=i5MOQgBPr3

Max-F-Helm avatar Aug 29 '22 08:08 Max-F-Helm

on_node_info at ../src/pipe_manager.cpp:401

At this line what we do is

if (const auto id = param.id; id == SPA_PARAM_Props || id == SPA_PARAM_EnumFormat || id == SPA_PARAM_Format) {
        pw_node_enum_params((struct pw_node*)nd->proxy, 0, id, 0, -1, nullptr);
}

This is something PipeWire also does in its own code in different places. pw_node_enum_params is a PipeWire function and not something defined in EasyEffects code. I think there is a good chance we crashed because of some bug in PipeWire. But I have no idea about what it could be.

wwmm avatar Aug 30 '22 13:08 wwmm