Skip to content

Commit 4f28265

Browse files
committed
[core] use TDirectory instead TMethodCall
1 parent 8cb44bb commit 4f28265

File tree

1 file changed

+5
-8
lines changed

1 file changed

+5
-8
lines changed

core/base/src/TROOT.cxx

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ FARPROC dlsym(void *library, const char *function_name)
119119
#include "TClass.h"
120120
#include "TClassEdit.h"
121121
#include "TClassGenerator.h"
122+
#include "TDirectory.h"
122123
#include "TDataType.h"
123124
#include "TStyle.h"
124125
#include "TObjectTable.h"
@@ -238,14 +239,10 @@ void TROOT::WriteCloseAllFiles()
238239
TIter next(gROOT->GetListOfFiles());
239240
while (TObject *obj = next()) {
240241
if (obj && obj->InheritsFrom(TClass::GetClass("TFile", kFALSE, kTRUE))) {
241-
TMethodCall callIsWritable(obj->IsA(), "IsWritable", "");
242-
Longptr_t retLong = 0;
243-
callIsWritable.Execute((void *)(obj), retLong);
244-
if (retLong == 1) {
245-
TMethodCall callWrite(obj->IsA(), "Write", "");
246-
callWrite.Execute((void *)(obj));
247-
TMethodCall callClose(obj->IsA(), "Close", "");
248-
callClose.Execute((void *)(obj));
242+
auto fobj = static_cast<TDirectory *>(obj);
243+
if (fobj->IsWritable()) {
244+
fobj->Write();
245+
fobj->Close();
249246
}
250247
}
251248
}

0 commit comments

Comments
 (0)