aboutsummaryrefslogtreecommitdiff
path: root/zenstore/basicfile.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'zenstore/basicfile.cpp')
-rw-r--r--zenstore/basicfile.cpp18
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
}