Attached is a stack trace.
This is 100% reproducible for me.
I realize it has been discussed before, but I wanted to check if it's possible to look into this without having to trash the userdb.sqlite because that means redoing lots and lots of configs in all modules and for every profile.

Basically I needed a new profile for some tests:
1)Create new profile
2)Connect
-> Expected: Optical trains popup
-> Effective: no Optical trains prompt
3)Switch to Capture or any other module using trains
-> No Train is defined
-> Edit trains button does nothing
4)Try to start a capture
-> Segmentation Fault

Attached is also my sqlite db if @Jasem wants to see if there is a case-specific corruption going on.

Nothing super explanatory in the logs, but here's the crash lines

[2024-01-07T18:48:06.652 PST WARN ][                       default] - QSocketNotifier: Invalid socket 8 and type 'Read', disabling...
[2024-01-07T18:48:06.652 PST WARN ][                       default] - QSocketNotifier: Invalid socket 21 and type 'Read', disabling...
[2024-01-07T18:48:06.652 PST WARN ][                       default] - QSocketNotifier: Invalid socket 27 and type 'Read', disabling...


Read More...