From 9294d5ff1a857248c8424bf06401f8d11383ac52 Mon Sep 17 00:00:00 2001 From: Pavel Kirilin <win10@list.ru> Date: Fri, 7 Jan 2022 12:15:35 +0400 Subject: [PATCH] Fixed eventual freezing. Signed-off-by: Pavel Kirilin <win10@list.ru> --- src/info_storages/file_info_storage.rs | 1 + src/storages/file_storage.rs | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/info_storages/file_info_storage.rs b/src/info_storages/file_info_storage.rs index fe8ccf1..338ac68 100644 --- a/src/info_storages/file_info_storage.rs +++ b/src/info_storages/file_info_storage.rs @@ -59,6 +59,7 @@ impl InfoStorage for FileInfoStorage { .to_string(), ) })?; + file.sync_data().await?; Ok(()) } diff --git a/src/storages/file_storage.rs b/src/storages/file_storage.rs index a8dbd6e..b6b7419 100644 --- a/src/storages/file_storage.rs +++ b/src/storages/file_storage.rs @@ -144,6 +144,7 @@ impl Storage for FileStorage { error!("{:?}", err); RustusError::UnableToWrite(info.path.clone().unwrap()) })?; + file.sync_data().await?; // Updating information about file. info.offset += bytes.len(); self.info_storage.set_info(&info, false).await?; @@ -180,7 +181,7 @@ impl Storage for FileStorage { error!("{:?}", err); RustusError::UnableToWrite(file_path.display().to_string()) })?; - + file.sync_all().await?; // Creating new FileInfo object and saving it. let file_info = FileInfo::new( file_id.as_str(), -- GitLab