Fix fstatfs call for compilation on 32 bit systems (#9251)
Summary: On some 32-bit systems, BTRFS_SUPER_MAGIC is unsigned while __fsword_t is signed. Pull Request resolved: https://github.com/facebook/rocksdb/pull/9251 Reviewed By: ajkr Differential Revision: D32961651 Pulled By: pdillinger fbshipit-source-id: 78e85fc1336f304a21e4d5961e60957c90daed63
This commit is contained in:
parent
5ac7843a03
commit
8e588307fc
3
env/io_posix.cc
vendored
3
env/io_posix.cc
vendored
@ -1543,7 +1543,8 @@ PosixDirectory::PosixDirectory(int fd) : fd_(fd) {
|
|||||||
#ifdef OS_LINUX
|
#ifdef OS_LINUX
|
||||||
struct statfs buf;
|
struct statfs buf;
|
||||||
int ret = fstatfs(fd, &buf);
|
int ret = fstatfs(fd, &buf);
|
||||||
is_btrfs_ = (ret == 0 && buf.f_type == BTRFS_SUPER_MAGIC);
|
is_btrfs_ = (ret == 0 && buf.f_type == static_cast<decltype(buf.f_type)>(
|
||||||
|
BTRFS_SUPER_MAGIC));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user