From e5d13bf03a3b7e8444ae367689852fcd6633e221 Mon Sep 17 00:00:00 2001 From: bigfoot547 Date: Wed, 15 Jan 2025 22:36:17 -0600 Subject: assets done --- src/launcher/download.rs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'src/launcher/download.rs') diff --git a/src/launcher/download.rs b/src/launcher/download.rs index 7d9be73..d8d05f7 100644 --- a/src/launcher/download.rs +++ b/src/launcher/download.rs @@ -2,7 +2,7 @@ use std::error::Error; use std::fmt::{Debug, Display, Formatter}; use std::io::ErrorKind; use std::path::{Path, PathBuf}; -use futures::{stream, StreamExt, TryStream}; +use futures::{stream, StreamExt, TryStream, TryStreamExt}; use log::{debug, warn}; use reqwest::{Client, IntoUrl, Method, RequestBuilder}; use sha1_smol::{Digest, Sha1}; @@ -281,3 +281,14 @@ impl Download for VerifiedDownload { Ok(()) } } + +pub async fn verify_files(files: Vec) -> Result<(), FileVerifyError> { + stream::iter(files) + .map(|dl| Ok(async move { + debug!("Verifying library {}", dl.get_path().display()); + util::verify_file(dl.get_path(), dl.get_expect_size(), dl.get_expect_sha1()).await + })) + .try_buffer_unordered(8) + .try_fold((), |_, _| async {Ok(())}) + .await +} -- cgit v1.2.3-70-g09d2