]> git.donarmstrong.com Git - bamtools.git/blobdiff - src/api/internal/io/BamFtp_p.cpp
Fixed EOF issues on *nix platforms
[bamtools.git] / src / api / internal / io / BamFtp_p.cpp
index d9f933cd448ee3034c36afa0db2e90bb092f2e35..a90a35743a91507ece1ed17078b5d2e7e7195cdb 100644 (file)
@@ -355,8 +355,10 @@ int64_t BamFtp::Read(char* data, const unsigned int numBytes) {
 
         // read bytes from data socket
         const int64_t socketBytesRead = ReadDataSocket(data+bytesReadSoFar, remainingBytes);
-        if ( socketBytesRead < 0 )
+        if ( socketBytesRead < 0 ) // error
             return -1;
+        else if ( socketBytesRead == 0 ) // EOF
+            return bytesReadSoFar;
         bytesReadSoFar += socketBytesRead;
         m_filePosition += socketBytesRead;
     }