diff --git a/Cargo.toml b/Cargo.toml index 25750e76..3d90b174 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -36,7 +36,6 @@ tokio-rustls = { version = "0.26.4", optional = true } rustls-pemfile = { version = "2.2.0", optional = true } rustls = "0.23.35" clap = { version = "4.5.47", features = ["derive"] } -http = "1.3.1" nom = "8.0.0" [features] @@ -60,6 +59,7 @@ stun-rs = "0.1.11" axum = { version = "0.8.6", features = ["ws"] } tower = "0.5.2" tower-http = { version = "0.6.6", features = ["fs", "cors"] } +http = "1.3.1" [[example]] name = "client" diff --git a/src/dialog/dialog.rs b/src/dialog/dialog.rs index 3149eb57..4964f8c6 100644 --- a/src/dialog/dialog.rs +++ b/src/dialog/dialog.rs @@ -815,6 +815,10 @@ impl DialogInner { ); return Ok(()); } + (DialogState::Confirmed(_, _), DialogState::WaitAck(_, _)) => { + warn!("dialog already confirmed, ignoring transition to {}", state); + return Ok(()); + } _ => {} } debug!("transitioning state: {} -> {}", old_state, state);