Fixed handshake leak
This commit is contained in:
parent
42499addc8
commit
c8b65c769b
@ -687,6 +687,8 @@ impl<Message> Host<Message> where Message: Send + Sync + Clone {
|
|||||||
if h.expired {
|
if h.expired {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
io.deregister_stream(token).expect("Error deleting handshake registration");
|
||||||
|
h.set_expired();
|
||||||
let originated = h.originated;
|
let originated = h.originated;
|
||||||
let mut session = match Session::new(&mut h, &self.info.read().unwrap()) {
|
let mut session = match Session::new(&mut h, &self.info.read().unwrap()) {
|
||||||
Ok(s) => s,
|
Ok(s) => s,
|
||||||
@ -705,8 +707,6 @@ impl<Message> Host<Message> where Message: Send + Sync + Clone {
|
|||||||
}
|
}
|
||||||
let result = sessions.insert_with(move |session_token| {
|
let result = sessions.insert_with(move |session_token| {
|
||||||
session.set_token(session_token);
|
session.set_token(session_token);
|
||||||
io.deregister_stream(token).expect("Error deleting handshake registration");
|
|
||||||
h.set_expired();
|
|
||||||
io.register_stream(session_token).expect("Error creating session registration");
|
io.register_stream(session_token).expect("Error creating session registration");
|
||||||
self.stats.inc_sessions();
|
self.stats.inc_sessions();
|
||||||
trace!(target: "network", "Creating session {} -> {}", token, session_token);
|
trace!(target: "network", "Creating session {} -> {}", token, session_token);
|
||||||
|
Loading…
Reference in New Issue
Block a user