mirror of
https://github.com/Start9Labs/start-os.git
synced 2026-03-30 12:11:56 +00:00
fix deadlock on install (#2667)
* fix deadlock on install * improve pruning script * bump tokio
This commit is contained in:
@@ -781,7 +781,7 @@ pub struct TmpDir {
|
||||
impl TmpDir {
|
||||
pub async fn new() -> Result<Self, Error> {
|
||||
let path = Path::new("/var/tmp/startos").join(base32::encode(
|
||||
base32::Alphabet::RFC4648 { padding: false },
|
||||
base32::Alphabet::Rfc4648 { padding: false },
|
||||
&rand::random::<[u8; 8]>(),
|
||||
));
|
||||
if tokio::fs::metadata(&path).await.is_ok() {
|
||||
|
||||
@@ -644,7 +644,7 @@ pub fn new_guid() -> InternedString {
|
||||
let mut buf = [0; 20];
|
||||
rand::thread_rng().fill_bytes(&mut buf);
|
||||
InternedString::intern(base32::encode(
|
||||
base32::Alphabet::RFC4648 { padding: false },
|
||||
base32::Alphabet::Rfc4648 { padding: false },
|
||||
&buf,
|
||||
))
|
||||
}
|
||||
|
||||
@@ -958,7 +958,7 @@ impl<T: AsRef<[u8]>> std::fmt::Display for Base16<T> {
|
||||
pub struct Base32<T>(pub T);
|
||||
impl<T: AsRef<[u8]>> std::fmt::Display for Base32<T> {
|
||||
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
||||
base32::encode(base32::Alphabet::RFC4648 { padding: true }, self.0.as_ref()).fmt(f)
|
||||
base32::encode(base32::Alphabet::Rfc4648 { padding: true }, self.0.as_ref()).fmt(f)
|
||||
}
|
||||
}
|
||||
impl<'de, T: TryFrom<Vec<u8>>> Deserialize<'de> for Base32<T> {
|
||||
@@ -967,7 +967,7 @@ impl<'de, T: TryFrom<Vec<u8>>> Deserialize<'de> for Base32<T> {
|
||||
D: Deserializer<'de>,
|
||||
{
|
||||
let s = String::deserialize(deserializer)?;
|
||||
base32::decode(base32::Alphabet::RFC4648 { padding: true }, &s)
|
||||
base32::decode(base32::Alphabet::Rfc4648 { padding: true }, &s)
|
||||
.ok_or_else(|| {
|
||||
serde::de::Error::invalid_value(
|
||||
serde::de::Unexpected::Str(&s),
|
||||
|
||||
Reference in New Issue
Block a user