I am seeing a crash when calling the GetListOfPrimitives() function of a TCanvas object in PyROOT. See very simple example code below to reproduce it. In the simple example, the crash occurs when python exists. It does not occur if I comment out the GetListOfPrimitives() call. Any idea what could be wrong?
Some additional information. I’ve tested this with the ATLAS environment on lxplus and can reproduce it with root 6.12.04-x86_64-slc6-gcc62-opt and python 2.7. However everything is fine with 6.10.06-x86_64-slc6-gcc62-opt.
It worked with ROOT 6.11.02 and appeared after going to ROOT 6.12.06.
Python 2.7 for both, gcc version 7.2.0 (Ubuntu 7.2.0-8ubuntu3.2) for the latter (not sure what the gcc version was for the 6.11).
Note that this does not always happen. For me it happens with your example script (where the canvas is in the global namespace and the script ends afterwards). But it does not happen if it is in a function like this:
import ROOT
def f()
c = ROOT.TCanvas()
print(c.GetListOfPrimitives())
f()