diff --git a/io/io/src/TFileCacheWrite.cxx b/io/io/src/TFileCacheWrite.cxx index 5cdd1d8f547ee35ed6b5a6857949363246e3fb80..f9bdf341465518eedb12c38cd7435b5ca4a8cf79 100644 --- a/io/io/src/TFileCacheWrite.cxx +++ b/io/io/src/TFileCacheWrite.cxx @@ -133,6 +133,7 @@ Int_t TFileCacheWrite::WriteBuffer(const char *buf, Long64_t pos, Int_t len) if (len >= fBufferSize) { //buffer larger than the cache itself: direct write to file fRecursive = kTRUE; + fFile->Seek(pos); // Flush may have changed this if (fFile->WriteBuffer(buf,len)) return -1; // failure fRecursive = kFALSE; return 1;