From cdc7cadb6dd997297795e1355aedd8c5408d5753 Mon Sep 17 00:00:00 2001 From: Ming Rui Zhang <mingrui.zhang@savoirfairelinux.com> Date: Fri, 18 Jun 2021 15:08:26 -0400 Subject: [PATCH] sipaccountbase: ensure the value for published ip address Gitlab: #567 Change-Id: I9fdb1601f407759a8b6ef73bccc32769e5693b5b --- src/sip/sipaccountbase.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/sip/sipaccountbase.cpp b/src/sip/sipaccountbase.cpp index e9b6d19d9d..11396b5a1a 100644 --- a/src/sip/sipaccountbase.cpp +++ b/src/sip/sipaccountbase.cpp @@ -293,9 +293,8 @@ SIPAccountBase::unserialize(const YAML::Node& node) parseValue(node, Conf::INTERFACE_KEY, interface_); parseValue(node, Conf::SAME_AS_LOCAL_KEY, publishedSameasLocal_); - std::string publishedIpAddress; - parseValue(node, Conf::PUBLISH_ADDR_KEY, publishedIpAddress); - IpAddr publishedIp {publishedIpAddress}; + parseValue(node, Conf::PUBLISH_ADDR_KEY, publishedIpAddress_); + IpAddr publishedIp {publishedIpAddress_}; if (publishedIp and not publishedSameasLocal_) setPublishedAddress(publishedIp); @@ -332,6 +331,9 @@ SIPAccountBase::setAccountDetails(const std::map<std::string, std::string>& deta parseBool(details, Conf::CONFIG_PUBLISHED_SAMEAS_LOCAL, publishedSameasLocal_); parseString(details, Conf::CONFIG_PUBLISHED_ADDRESS, publishedIpAddress_); parseInt(details, Conf::CONFIG_PUBLISHED_PORT, publishedPort_); + IpAddr publishedIp {publishedIpAddress_}; + if (publishedIp and not publishedSameasLocal_) + setPublishedAddress(publishedIp); parseString(details, Conf::CONFIG_ACCOUNT_DTMF_TYPE, dtmfType_); -- GitLab