|
@@ -141,15 +141,12 @@ Description IceTransport::getLocalDescription(Description::Type type) const {
|
|
if (juice_get_local_description(mAgent.get(), sdp, JUICE_MAX_SDP_STRING_LEN) < 0)
|
|
if (juice_get_local_description(mAgent.get(), sdp, JUICE_MAX_SDP_STRING_LEN) < 0)
|
|
throw std::runtime_error("Failed to generate local SDP");
|
|
throw std::runtime_error("Failed to generate local SDP");
|
|
|
|
|
|
- return Description(string(sdp), type, mRole);
|
|
|
|
|
|
+ return Description(string(sdp), type, type == Description::Type::Offer ? Description::Role::ActPass : mRole);
|
|
}
|
|
}
|
|
|
|
|
|
void IceTransport::setRemoteDescription(const Description &description) {
|
|
void IceTransport::setRemoteDescription(const Description &description) {
|
|
- if (description.role() == Description::Role::ActPass)
|
|
|
|
- mRole = Description::Role::Passive;
|
|
|
|
- else
|
|
|
|
- mRole = description.role() == Description::Role::Active ? Description::Role::Passive
|
|
|
|
- : Description::Role::Active;
|
|
|
|
|
|
+ mRole = description.role() == Description::Role::Active ? Description::Role::Passive : Description::Role::Active;
|
|
|
|
+
|
|
mMid = description.bundleMid();
|
|
mMid = description.bundleMid();
|
|
if (juice_set_remote_description(mAgent.get(),
|
|
if (juice_set_remote_description(mAgent.get(),
|
|
description.generateApplicationSdp("\r\n").c_str()) < 0)
|
|
description.generateApplicationSdp("\r\n").c_str()) < 0)
|