diff options
Diffstat (limited to 'zenstore/basicfile.cpp')
| -rw-r--r-- | zenstore/basicfile.cpp | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/zenstore/basicfile.cpp b/zenstore/basicfile.cpp index 6e60c6e9c..e795b67eb 100644 --- a/zenstore/basicfile.cpp +++ b/zenstore/basicfile.cpp @@ -352,10 +352,13 @@ BasicFile::SetFileSize(uint64_t FileSize) ThrowSystemError(Error, fmt::format("Failed to set truncate file to {} for file {}", FileSize, PathFromHandle(m_FileHandle))); } } - int Error = posix_fallocate(Fd, 0, (off_t)FileSize); - if (Error) + if (FileSize > 0) { - ThrowSystemError(Error, fmt::format("Failed to allocate space of {} for file {}", FileSize, PathFromHandle(m_FileHandle))) + int Error = posix_fallocate(Fd, 0, (off_t)FileSize); + if (Error) + { + ThrowSystemError(Error, fmt::format("Failed to allocate space of {} for file {}", FileSize, PathFromHandle(m_FileHandle))); + } } #else int Fd = int(intptr_t(m_FileHandle)); @@ -367,10 +370,13 @@ BasicFile::SetFileSize(uint64_t FileSize) ThrowSystemError(Error, fmt::format("Failed to set truncate file to {} for file {}", FileSize, PathFromHandle(m_FileHandle))); } } - int Error = posix_fallocate64(Fd, 0, (off64_t)FileSize); - if (Error) + if (FileSize > 0) { - ThrowSystemError(Error, fmt::format("Failed to allocate space of {} for file {}", FileSize, PathFromHandle(m_FileHandle))) + int Error = posix_fallocate64(Fd, 0, (off64_t)FileSize); + if (Error) + { + ThrowSystemError(Error, fmt::format("Failed to allocate space of {} for file {}", FileSize, PathFromHandle(m_FileHandle))); + } } #endif } |