liblsl icon indicating copy to clipboard operation
liblsl copied to clipboard

Tests that (almost) always fail

Open cboulay opened this issue 1 year ago • 2 comments

  • [ ] MINGW - internal loguruthreadnames skip
  • [ ] MacOS - internal reuseport on ipv6 multicast - skip
  • [ ] pushpull benchmarks in MSVC win often segfault

The first 2 don't test LSL code directly so I have excluded the problematic config on the problematic target platform.

cboulay avatar May 25 '24 03:05 cboulay

I managed to reproduce a segmentation fault from the pushpull benchmark test locally. It happens here:

https://github.com/sccn/liblsl/blob/7e61a2ef7a25a54b54968fb5c8776054f49b028e/src/sample.cpp#L81

It happens at the very end of the test case, as the outlet is going out of scope, triggering its cleanup:

lsl::stream_outlet::~stream_outlet() > lsl_destroy_outlet(...) > ~stream_outlet_impl() > lsl::factory::~factory()

During ~factory, this line https://github.com/sccn/liblsl/blob/7e61a2ef7a25a54b54968fb5c8776054f49b028e/src/sample.cpp#L470

cur is already nonsense.

image

cboulay avatar May 25 '24 04:05 cboulay

#220 might be helpful: "bad_weak_ptr"

cboulay avatar Jun 06 '24 13:06 cboulay