Blame SOURCES/lftp-4.4.8-mirror-file-size-decrease.patch

e03c4f
diff --git a/src/SFtp.cc b/src/SFtp.cc
e03c4f
index 0b422fb..db1b705 100644
e03c4f
--- a/src/SFtp.cc
e03c4f
+++ b/src/SFtp.cc
e03c4f
@@ -1149,7 +1149,7 @@ int SFtp::Read(void *buf,int size)
e03c4f
       return error_code;
e03c4f
    if(mode==CLOSED)
e03c4f
       return 0;
e03c4f
-   if(state==DONE)
e03c4f
+   if(state==DONE && !(file_buf && file_buf->Size()>0))
e03c4f
       return 0;	  // eof
e03c4f
    if(state==FILE_RECV)
e03c4f
    {
e03c4f
@@ -1161,7 +1161,10 @@ int SFtp::Read(void *buf,int size)
e03c4f
 	 if(entity_size<0 || request_pos
e03c4f
 	    RequestMoreData();
e03c4f
       }
e03c4f
+    }
e03c4f
 
e03c4f
+    if(file_buf && file_buf->Size()>0)
e03c4f
+    {
e03c4f
       const char *buf1;
e03c4f
       int size1;
e03c4f
       file_buf->Get(&buf1,&size1);