Please read tips for efficient and successful posting and posting code
Please fill also the fields below. Note that root -b -q
will tell you this info, and starting from 6.28/06 upwards, you can call .forum bug
from the ROOT prompt to pre-populate a topic.
ROOT Version: 6.32.02
Platform: Debian Linux 6.10
Compiler: g++ 12.2
Hi, I am currently trying to migrate a set of codes my collaboration has been using for a long time from ROOT5 to ROOT6. If I compile the codes in ROOT 5.34/38, everything runs flawlessly, as it ever did. If I try ROOT 6.32.02, however, several different elements of the GUI are broken. The codes are a TApplication with a user interface for browsing detector signals, and for ROOT6 compilation I cannot use zoom on TPads. Furthermore, the GUI uses some colored markers, which disappear when clicked on after ROOT6 compilation. Lastly, after browsing several signals, the program segfaults with
free(): invalid next size (fast)
which never happens in ROOT5 compilation. I have tried troubleshooting the segfault part of it myself in hopes that it would lead me to other problems, but I could not find the issue. I have tried using Valgrind 3.19 with root-suppression, but itās that annoying case where the crash disappears in Valgrind. I have also tried using GDB 13.1, but as often happens with segfaults, I get a different crash everytime, so GDB backtrace did not yield anything useful.
I did not post any sample codes here because the code is rather large, and the GDB-identified source of the segfault drifts around (as stray pointers do). Moreover, since I would like to restore graphical functionality (like zooming), I was not sure which of the many parts of the code could have changed behaviour between ROOT versions to cause it.
I tried reading ROOT versioning history of ROOT6 for hints, but also didnt identify anything obvious. I would appreciate any hints on what sort of graphical changes occurred between the two ROOT versions I try that in your experience could result in such behaviour, and then I can try to troubleshoot it from there. I can post corresponding snippets of the code as well for anything you would expect to go astray based on the description of the problem. Thanks in advance for any help!