Skip to content

Commit a9bf7e7

Browse files
committed
[tree] Honour object auto registration settings in TEntryList.
TEntryList and its derived classes will from here on only register themselves to gDirectory when the thread-local auto-registration is enabled.
1 parent ed3cb95 commit a9bf7e7

1 file changed

Lines changed: 17 additions & 10 deletions

File tree

tree/tree/src/TEntryList.cxx

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ End_Macro
160160
#include "TRegexp.h"
161161
#include "TSystem.h"
162162
#include "TObjString.h"
163-
163+
#include "TROOT.h"
164164

165165
////////////////////////////////////////////////////////////////////////////////
166166
/// default c-tor
@@ -172,9 +172,10 @@ TEntryList::TEntryList() = default;
172172

173173
TEntryList::TEntryList(const char *name, const char *title) : TNamed(name, title)
174174
{
175-
176-
fDirectory = gDirectory;
177-
if (fDirectory) fDirectory->Append(this);
175+
if (ROOT::Experimental::ObjectAutoRegistrationEnabled()) {
176+
fDirectory = gDirectory;
177+
if (fDirectory) fDirectory->Append(this);
178+
}
178179
}
179180

180181
////////////////////////////////////////////////////////////////////////////////
@@ -184,8 +185,10 @@ TEntryList::TEntryList(const char *name, const char *title, const TTree *tree) :
184185
{
185186
TEntryList::SetTree(tree);
186187

187-
fDirectory = gDirectory;
188-
if (fDirectory) fDirectory->Append(this);
188+
if (ROOT::Experimental::ObjectAutoRegistrationEnabled()) {
189+
fDirectory = gDirectory;
190+
if (fDirectory) fDirectory->Append(this);
191+
}
189192
}
190193

191194
////////////////////////////////////////////////////////////////////////////////
@@ -196,8 +199,10 @@ TEntryList::TEntryList(const char *name, const char *title, const char *treename
196199
{
197200
SetTree(treename, filename);
198201

199-
fDirectory = gDirectory;
200-
if (fDirectory) fDirectory->Append(this);
202+
if (ROOT::Experimental::ObjectAutoRegistrationEnabled()) {
203+
fDirectory = gDirectory;
204+
if (fDirectory) fDirectory->Append(this);
205+
}
201206
}
202207

203208
////////////////////////////////////////////////////////////////////////////////
@@ -207,8 +212,10 @@ TEntryList::TEntryList(const TTree *tree)
207212
{
208213
SetTree(tree);
209214

210-
fDirectory = gDirectory;
211-
if (fDirectory) fDirectory->Append(this);
215+
if (ROOT::Experimental::ObjectAutoRegistrationEnabled()) {
216+
fDirectory = gDirectory;
217+
if (fDirectory) fDirectory->Append(this);
218+
}
212219
}
213220

214221
////////////////////////////////////////////////////////////////////////////////

0 commit comments

Comments
 (0)