aboutsummaryrefslogtreecommitdiff
path: root/src/common/file_util.h
diff options
context:
space:
mode:
authorLioncash <mathew1800@gmail.com>2018-08-07 13:47:14 -0400
committerLioncash <mathew1800@gmail.com>2018-08-07 13:51:37 -0400
commit0735a0c8a11e62bbe0c7bed52c7c8a9a861b5ce4 (patch)
tree5224ed7992e75c4f1b7c4b37caccff58029c3bb4 /src/common/file_util.h
parentc392650e21dfcfd8663c44d4168ea3e527e19d5e (diff)
file_util: Avoid sign-conversions in WriteArray() and ReadArray()
Prevents compiler warnings.
Diffstat (limited to 'src/common/file_util.h')
-rw-r--r--src/common/file_util.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/common/file_util.h b/src/common/file_util.h
index 28697d527c..430dac41c4 100644
--- a/src/common/file_util.h
+++ b/src/common/file_util.h
@@ -8,6 +8,7 @@
#include <cstdio>
#include <fstream>
#include <functional>
+#include <limits>
#include <string>
#include <string_view>
#include <type_traits>
@@ -210,8 +211,9 @@ public:
static_assert(std::is_trivially_copyable<T>(),
"Given array does not consist of trivially copyable objects");
- if (!IsOpen())
- return -1;
+ if (!IsOpen()) {
+ return std::numeric_limits<size_t>::max();
+ }
return std::fread(data, sizeof(T), length, m_file);
}
@@ -220,8 +222,10 @@ public:
size_t WriteArray(const T* data, size_t length) {
static_assert(std::is_trivially_copyable<T>(),
"Given array does not consist of trivially copyable objects");
- if (!IsOpen())
- return -1;
+ if (!IsOpen()) {
+ return std::numeric_limits<size_t>::max();
+ }
+
return std::fwrite(data, sizeof(T), length, m_file);
}