From cee14f9288f05ec1a55c2e88fdacffa838b5e9f2 Mon Sep 17 00:00:00 2001 From: Jiahao XU <30436523+NobodyXu@users.noreply.github.com> Date: Sat, 22 Feb 2025 22:50:02 +1100 Subject: [PATCH] Simplify create_if_not_exist Signed-off-by: Jiahao XU <30436523+NobodyXu@users.noreply.github.com> --- crates/binstalk-manifests/src/helpers.rs | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/crates/binstalk-manifests/src/helpers.rs b/crates/binstalk-manifests/src/helpers.rs index 4b2f3f8e..45d55fb8 100644 --- a/crates/binstalk-manifests/src/helpers.rs +++ b/crates/binstalk-manifests/src/helpers.rs @@ -4,14 +4,12 @@ use fs_lock::FileLock; /// Return exclusively locked file that is readable and writable. pub(crate) fn create_if_not_exist(path: &Path) -> io::Result { - let mut options = fs::File::options(); - options.read(true).write(true); - - options - .clone() - .create_new(true) + fs::File::options() + .read(true) + .write(true) + .create(true) + .truncate(false) .open(path) - .or_else(|_| options.open(path)) .and_then(FileLock::new_exclusive) .map(|file_lock| file_lock.set_file_path(path)) }