diff --git a/net/netx/src/TXNetFile.cxx b/net/netx/src/TXNetFile.cxx index 27a48cb158dbe..c2b42cc37de21 100644 --- a/net/netx/src/TXNetFile.cxx +++ b/net/netx/src/TXNetFile.cxx @@ -783,6 +783,8 @@ Bool_t TXNetFile::ReadBuffers(char *buf, Long64_t *pos, Int_t *len, Int_t nbuf) for (Int_t i = 0; i < nbuf; i++) pos[i] += fArchiveOffset; } + Long64_t expected_nr = 0; + for (Int_t i = 0; i < nbuf; i++) {expected_nr += len[i];} // A null buffer means that we want to use the async stuff // hence we have to sync the cache size in XrdClient with the supposed @@ -799,7 +801,7 @@ Bool_t TXNetFile::ReadBuffers(char *buf, Long64_t *pos, Int_t *len, Int_t nbuf) if (gDebug > 1) Info("ReadBuffers", "response from ReadV(%d) nr: %lld", nbuf, nr); - if (nr > 0) { + if (nr == expected_nr) { if (gDebug > 1) Info("ReadBuffers", "%lld bytes of data read from a list of %d buffers",