Make most implicit integer truncations and sign conversions explicit
[folly.git] / folly / portability / SysFile.cpp
index b484881665051669f9782fdba7b9fe6078862c8b..9e42fa71f2aa9d0d2ccd5e0ebfa7b58b840bd1bd 100755 (executable)
@@ -33,10 +33,9 @@ extern "C" int flock(int fd, int operation) {
       return -1;
     }
   } else {
-    DWORD flags = 0
-        | (operation & LOCK_NB ? LOCKFILE_FAIL_IMMEDIATELY : 0)
-        | (operation & LOCK_EX ? LOCKFILE_EXCLUSIVE_LOCK : 0)
-        ;
+    DWORD flags = DWORD(
+        (operation & LOCK_NB ? LOCKFILE_FAIL_IMMEDIATELY : 0) |
+        (operation & LOCK_EX ? LOCKFILE_EXCLUSIVE_LOCK : 0));
     OVERLAPPED ov = {};
     if (!LockFileEx(h, flags, 0, kMaxDWORD, kMaxDWORD, &ov)) {
       return -1;