update rocket and lock

This commit is contained in:
Jonathan de Jong 2021-07-14 11:28:24 +02:00
parent 3c236fb671
commit 15471d9ac4
4 changed files with 353 additions and 273 deletions

View file

@ -21,9 +21,9 @@ use log::error;
use lru_cache::LruCache;
use rocket::{
futures::{channel::mpsc, stream::FuturesUnordered, StreamExt},
outcome::IntoOutcome,
outcome::{try_outcome, IntoOutcome},
request::{FromRequest, Request},
try_outcome, State,
State,
};
use ruma::{DeviceId, ServerName, UserId};
use serde::{de::IgnoredAny, Deserialize};
@ -608,7 +608,7 @@ impl<'r> FromRequest<'r> for DatabaseGuard {
type Error = ();
async fn from_request(req: &'r Request<'_>) -> rocket::request::Outcome<Self, ()> {
let db = try_outcome!(req.guard::<State<'_, Arc<TokioRwLock<Database>>>>().await);
let db = try_outcome!(req.guard::<&State<Arc<TokioRwLock<Database>>>>().await);
Ok(DatabaseGuard(Arc::clone(&db).read_owned().await)).or_forward(())
}