diff --git a/src/curl.cpp b/src/curl.cpp index a5117b3..2ae9fa8 100644 --- a/src/curl.cpp +++ b/src/curl.cpp @@ -703,7 +703,12 @@ size_t S3fsCurl::DownloadWriteCallback(void* ptr, size_t size, size_t nmemb, voi } pCurl->partdata.startpos += totalwrite; pCurl->partdata.size -= totalwrite; - + + // flush the file and clean the page cache + if (pCurl->partdata.size == 0){ + fdatasync(pCurl->partdata.fd); + } + return totalwrite; }