diff --git a/Userland/Libraries/LibC/sys/file.cpp b/Userland/Libraries/LibC/sys/file.cpp index 03142f5f08..826ca21af8 100644 --- a/Userland/Libraries/LibC/sys/file.cpp +++ b/Userland/Libraries/LibC/sys/file.cpp @@ -1,5 +1,6 @@ /* * Copyright (c) 2021, Peter Elliott + * Copyright (c) 2022, Idan Horowitz * * SPDX-License-Identifier: BSD-2-Clause */ @@ -16,11 +17,6 @@ int flock(int fd, int operation) struct flock lock { short(operation & 0b11), SEEK_SET, 0, 0, 0 }; - if (operation & LOCK_NB) { - return fcntl(fd, F_SETLK, &lock); - } - - // FIXME: Implement F_SETLKW in fcntl. - VERIFY_NOT_REACHED(); + return fcntl(fd, (operation & LOCK_NB) ? F_SETLK : F_SETLKW, &lock); } }