#include <TStopwatch.h>
#include <TPluginManager.h>
#include <TBufferFile.h>
-#include <TProcessID.h>
#include <sys/uio.h>
#ifdef USE_EB
// The return value is the number of written bytes or an error code
const Long64_t kFileSizeErrorLevel = 19000000000LL;
- Int_t objectNumber = TProcessID::GetObjectCount();
-
Long64_t currentFileSize = GetTotalSize();
// AliDebug(1,Form("current file size is %lld bytes",currentFileSize));
if(currentFileSize > kFileSizeErrorLevel) {
- Error("ProcessEvent", "file size (%lu) exceeds the limit "
+ Error("ProcessEvent", "file size (%lld) exceeds the limit "
, currentFileSize);
return kErrFileSize;
}
// Store raw event in tree
Int_t nBytes = fRawDB->Fill();
- TProcessID::SetObjectCount(objectNumber);
-
// Fill the event tag object
fEventTag->SetHeader(header);
fEventTag->SetGUID(fRawDB->GetDB()->GetUUID().AsString());
// Create new raw DB.
if (fRawDB) Close();
- if (Open(mode,NULL,maxFileSize,fs1,fs2) < 0) return 1;
-
+ if (Open(mode,NULL,maxFileSize,fs1,fs2) < 0) {
+ if (fd>-1) close(fd);
+ return 1;
+ }
// Process input stream
#ifdef USE_EB
Int_t eorFlag = 0;
Error("Run", "error reading base header");
Close();
delete[] event;
+ if (fd>-1) close(fd);
return 1;
}
}
Close();
delete[] event;
delete hdr;
+ if (fd>-1) close(fd);
return 1;
}
}
Close();
delete[] event;
delete hdr;
+ if (fd>-1) close(fd);
return 1;
}
}
Close();
if (inputFile) delete[] event;
delete hdr;
+ if (fd>-1) close(fd);
return 1;
}
#endif
} else {
// Close input source
- close(fd);
+ if (fd>-1) close(fd);
delete [] event;
}