Merged revisions 123113 via svnmerge from
[asterisk/asterisk.git] / channels / chan_sip.c
index 64e1e5b..72035eb 100644 (file)
@@ -21262,8 +21262,8 @@ static struct sip_peer *build_peer(const char *name, struct ast_variable *v, str
                } else if (!strcasecmp(v->name, "hasvoicemail")) {
                        /* People expect that if 'hasvoicemail' is set, that the mailbox will
                         * be also set, even if not explicitly specified. */
-                       if (ast_true(v->value) && ast_strlen_zero(peer->mailbox)) {
-                               ast_copy_string(peer->mailbox, name, sizeof(peer->mailbox));
+                       if (ast_true(v->value) && AST_LIST_EMPTY(&peer->mailboxes)) {
+                               add_peer_mailboxes(peer, name);
                        }
                } else if (!strcasecmp(v->name, "subscribemwi")) {
                        ast_set2_flag(&peer->flags[1], ast_true(v->value), SIP_PAGE2_SUBSCRIBEMWIONLY);