In the first step, FastICA runs a whitening that may return a matrix with a lower dimension then the requested number of independent components. If the library is compiled with debug, this will trigger an assertion failure, and without the debug flag, unallocated memory is accessed. Reproducible: Always Steps to Reproduce: A test case is attached that triggers the bug. To see the bug either compile the library with debug use flag enabled or run it with valgrind. Actual Results: Assertion fails or unallocated memory is accessed. Expected Results: test passes
Created attachment 276155 [details, diff] Patch that corrects the described problem
Created attachment 276157 [details] Test case that triggers the bug. Compile the test case with g++ -o testicabug -litpp main.cc
thanks a lot for the patch! make sure you submit it upstream as well.
Upstream BUG ID: 3527358