1 Index: channels/chan_sip.c |
1 Index: channels/chan_sip.c |
2 diff -Nau channels/chan_sip.c.orig channels/chan_sip.c |
2 diff -Nau channels/chan_sip.c.orig channels/chan_sip.c |
3 --- channels/chan_sip.c.orig 2011-01-14 18:32:52.000000000 +0100 |
3 --- channels/chan_sip.c.orig 2011-01-14 18:32:52.000000000 +0100 |
4 +++ channels/chan_sip.c 2011-03-13 14:34:29.000000000 +0100 |
4 +++ channels/chan_sip.c 2011-03-13 14:34:29.000000000 +0100 |
5 @@ -25085,6 +25085,7 @@ |
5 @@ -25791,6 +25791,7 @@ |
6 struct sip_pvt *p; |
6 struct sip_pvt *p; |
7 int newmsgs = 0, oldmsgs = 0; |
7 int newmsgs = 0, oldmsgs = 0; |
8 const char *vmexten = NULL; |
8 const char *vmexten = NULL; |
9 + char *s = NULL; |
9 + char *s = NULL; |
10 |
10 |
11 ao2_lock(peer); |
11 ao2_lock(peer); |
12 |
12 |
13 @@ -25138,6 +25139,11 @@ |
13 @@ -25852,6 +25853,11 @@ |
14 } |
14 } |
15 /* Recalculate our side, and recalculate Call ID */ |
15 /* Recalculate our side, and recalculate Call ID */ |
16 ast_sip_ouraddrfor(&p->sa, &p->ourip, p); |
16 ast_sip_ouraddrfor(&p->sa, &p->ourip, p); |
17 + /* Set the username = mailbox and remove the context */ |
17 + /* Set the username = mailbox and remove the context */ |
18 + ast_string_field_build(p, username, "%s", peer->name); |
18 + ast_string_field_build(p, username, "%s", peer->name); |
19 + s = strchr(p->username, '@'); |
19 + s = strchr(p->username, '@'); |
20 + if (s != NULL) |
20 + if (s != NULL) |
21 + *s = 0; |
21 + *s = 0; |
22 build_via(p); |
22 build_via(p); |
23 ao2_t_unlink(dialogs, p, "About to change the callid -- remove the old name"); |
23 |
24 build_callid_pvt(p); |
24 ao2_lock(peer); |