Fix mutex issues.

This commit is contained in:
Paul
2021-02-19 15:24:19 +00:00
parent 3c7852271a
commit 4eb76fd154

View File

@@ -163,10 +163,15 @@ async fn accept(stream: TcpStream) {
// ! Could just run permission check here. // ! Could just run permission check here.
ServerboundNotification::BeginTyping { channel } => { ServerboundNotification::BeginTyping { channel } => {
if mutex.lock().unwrap().is_some() { if mutex.lock().unwrap().is_some() {
let user = {
let mutex = mutex.lock().unwrap();
let session = mutex.as_ref().unwrap();
session.user_id.clone()
};
ClientboundNotification::ChannelStartTyping { ClientboundNotification::ChannelStartTyping {
id: channel.clone(), id: channel.clone(),
// lol user
user: mutex.lock().as_ref().unwrap().as_ref().unwrap().user_id.clone()
} }
.publish(channel) .publish(channel)
.await .await
@@ -181,9 +186,15 @@ async fn accept(stream: TcpStream) {
} }
ServerboundNotification::EndTyping { channel } => { ServerboundNotification::EndTyping { channel } => {
if mutex.lock().unwrap().is_some() { if mutex.lock().unwrap().is_some() {
let user = {
let mutex = mutex.lock().unwrap();
let session = mutex.as_ref().unwrap();
session.user_id.clone()
};
ClientboundNotification::ChannelStopTyping { ClientboundNotification::ChannelStopTyping {
id: channel.clone(), id: channel.clone(),
user: mutex.lock().as_ref().unwrap().as_ref().unwrap().user_id.clone() user
} }
.publish(channel) .publish(channel)
.await .await