Alright, I came up with a (more or less) small reproducer.
zdt.zip (73.2 KB)
By adding several artificial printfs and stuff like that, I managed to get reproducible ‘freezes’ in two different computers. It always get stuck, though sometimes with an internal TTimer from TGCommandPlugin, sometimes with the normal timers from TApplication.Run (TUnixsystem).
I do:
mkdir build && cd build
make
gdb --args ../build/gui/runGUI --prbs 26 -q
Gets stuck...
CTRL+C
info threads
thread apply all bt
print (('ROOT::TReentrantRWLock<std::mutex, ROOT::Internal::RecurseCounts>' * const)ROOT::gCoreMutex)->fMutex
First one needs to clone the CLI11 repository as explained in the README file.
Thanks!!