diff --git a/main/pbx.c b/main/pbx.c
index 4db89f803ab753937945818afac1c21b24e95140..5000bf47b5d48c7345e096465176b4c23938f3c5 100644
--- a/main/pbx.c
+++ b/main/pbx.c
@@ -9969,6 +9969,7 @@ static int pbx_outgoing_attempt(const char *type, struct ast_format_cap *cap, co
 			ast_channel_unlock(*channel);
 			ast_channel_unref(*channel);
 		}
+		ast_mutex_unlock(&outgoing->lock);
 		ao2_ref(outgoing, -1);
 		return -1;
 	}