From 67431ec9f764066e88d7934bc71fa32e8a4ec425 Mon Sep 17 00:00:00 2001 From: Rene Brun <Rene.Brun@cern.ch> Date: Wed, 7 Nov 2007 07:16:41 +0000 Subject: [PATCH] From Gerri: Fix an important bug introduced in the latest change by Fabrizio. git-svn-id: http://root.cern.ch/svn/root/trunk@20692 27541ba8-7e3a-0410-8455-c3a389f83636 --- io/src/TFileCacheRead.cxx | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/io/src/TFileCacheRead.cxx b/io/src/TFileCacheRead.cxx index f3771f9e7fd..8cca6f7ebbb 100644 --- a/io/src/TFileCacheRead.cxx +++ b/io/src/TFileCacheRead.cxx @@ -93,12 +93,13 @@ TFileCacheRead::TFileCacheRead(TFile *file, Int_t buffersize) fFirstIndexToPrefetch = 0; fAsyncReading = gEnv->GetValue("TFile.AsyncReading", 1); if (fAsyncReading) { - // If asynchronous reading is not supported by this TFile specialization + // Check if asynchronous reading is supported by this TFile specialization + fAsyncReading = kFALSE; + if (file && !(file->ReadBufferAsync(0, 0))) + fAsyncReading = kTRUE; + } else { // we use sync primitives, hence we need the local buffer - if (file && file->ReadBufferAsync(0, 0)) { - fAsyncReading = kFALSE; - fBuffer = new char[fBufferSize]; - } + fBuffer = new char[fBufferSize]; } fIsSorted = kFALSE; -- GitLab