PyROOT loop over files, huge memory leak

Hi,

I observe the same behaviour in an equivalent C++ macro:

void process_file(const char* fname) {
  TFile rootFile(fname, "READ");
  TFolder *histos_folder;
  rootFile.GetObject("histos", histos_folder);
  rootFile.Close();

  delete histos_folder;

  MemInfo_t memInfo;
  gSystem->GetMemInfo(&memInfo);
  cout << memInfo.fMemUsed << endl;
}

void test() {
  for ( auto &s : { "his05000_Reanalysis_1.root", "his05001_Reanalysis_1.root", "his05002_Reanalysis_1.root" }) {
    process_file(s);
  }
}

Deleting or not the histos folder does not make a difference.