Skip to content

Commit 8b45bdc

Browse files
authored
Fix: Moved away from Mutex for boolean flag (#782)
Uneeded mutex setup for single use flag
1 parent dd0e636 commit 8b45bdc

File tree

1 file changed

+10
-10
lines changed

1 file changed

+10
-10
lines changed

worker-sandbox/src/r2.rs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,25 @@
11
use futures_util::StreamExt;
2-
use std::{collections::HashMap, convert::TryFrom, sync::Mutex};
2+
use std::{
3+
collections::HashMap,
4+
convert::TryFrom,
5+
sync::atomic::{AtomicBool, Ordering},
6+
};
37
use worker::{
48
Bucket, Conditional, Data, Date, Env, FixedLengthStream, HttpMetadata, Include, Request,
59
Response, Result,
610
};
711

812
use crate::SomeSharedData;
913

10-
static SEEDED: Mutex<bool> = Mutex::new(false);
14+
static SEEDED: AtomicBool = AtomicBool::new(false);
1115

1216
pub async fn seed_bucket(bucket: &Bucket) -> Result<()> {
13-
{
14-
let mut seeded = SEEDED.lock().unwrap();
15-
16-
if *seeded {
17-
return Ok(());
18-
}
19-
20-
*seeded = true;
17+
if SEEDED.load(Ordering::Acquire) {
18+
return Ok(());
2119
}
2220

21+
SEEDED.store(true, Ordering::Release);
22+
2323
bucket.put("no-props", "text".to_string()).execute().await?;
2424
bucket
2525
.put("no-props-no-body", Data::Empty)

0 commit comments

Comments
 (0)