diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 6b3fa6990618273211a7f364f01114238975f6a3..2febf0975693d32ade854d14b8a38f5705b48d20 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -30445,7 +30445,7 @@ static struct sip_peer *build_peer(const char *name, struct ast_variable *v, str } else if (!strcasecmp(v->name, "host")) { if (!strcasecmp(v->value, "dynamic")) { /* They'll register with us */ - if (!found || !peer->host_dynamic) { + if ((!found && !realtime) || !peer->host_dynamic) { /* Initialize stuff if this is a new peer, or if it used to * not be dynamic before the reload. */ ast_sockaddr_setnull(&peer->addr);