[svn-commits] tilghman: trunk r135748 - in /trunk: ./ channels/chan_iax2.c
SVN commits to the Digium repositories
svn-commits at lists.digium.com
Tue Aug 5 16:37:35 CDT 2008
Author: tilghman
Date: Tue Aug 5 16:37:35 2008
New Revision: 135748
URL: http://svn.digium.com/view/asterisk?view=rev&rev=135748
Log:
Merged revisions 135747 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4
........
r135747 | tilghman | 2008-08-05 16:34:46 -0500 (Tue, 05 Aug 2008) | 9 lines
In a conversion to use ast_strlen_zero, the meaning of the flag IAX_HASCALLERID
was perverted. This change reverts IAX2 to the original meaning, which was,
that the callerid set on the client should be overridden on the server, even if
that means the resulting callerid is blank. In other words, if you set
"callerid=" in the IAX config, then the callerid should be overridden to blank,
even if set on the client. Note that there's a distinction, even on realtime,
between the field not existing (NULL in databases) and the field existing, but
set to blank (override callerid to blank).
........
Modified:
trunk/ (props changed)
trunk/channels/chan_iax2.c
Propchange: trunk/
------------------------------------------------------------------------------
Binary property 'branch-1.4-merged' - no diff available.
Modified: trunk/channels/chan_iax2.c
URL: http://svn.digium.com/view/asterisk/trunk/channels/chan_iax2.c?view=diff&rev=135748&r1=135747&r2=135748
==============================================================================
--- trunk/channels/chan_iax2.c (original)
+++ trunk/channels/chan_iax2.c Tue Aug 5 16:37:35 2008
@@ -10573,33 +10573,20 @@
if (!ast_strlen_zero(v->value)) {
char name2[80];
char num2[80];
- ast_callerid_split(v->value, name2, 80, num2, 80);
+ ast_callerid_split(v->value, name2, sizeof(name2), num2, sizeof(num2));
ast_string_field_set(peer, cid_name, name2);
ast_string_field_set(peer, cid_num, num2);
- ast_set_flag(peer, IAX_HASCALLERID);
} else {
- ast_clear_flag(peer, IAX_HASCALLERID);
ast_string_field_set(peer, cid_name, "");
ast_string_field_set(peer, cid_num, "");
}
+ ast_set_flag(peer, IAX_HASCALLERID);
} else if (!strcasecmp(v->name, "fullname")) {
- if (!ast_strlen_zero(v->value)) {
- ast_string_field_set(peer, cid_name, v->value);
- ast_set_flag(peer, IAX_HASCALLERID);
- } else {
- ast_string_field_set(peer, cid_name, "");
- if (ast_strlen_zero(peer->cid_num))
- ast_clear_flag(peer, IAX_HASCALLERID);
- }
+ ast_string_field_set(peer, cid_name, S_OR(v->value, ""));
+ ast_set_flag(peer, IAX_HASCALLERID);
} else if (!strcasecmp(v->name, "cid_number")) {
- if (!ast_strlen_zero(v->value)) {
- ast_string_field_set(peer, cid_num, v->value);
- ast_set_flag(peer, IAX_HASCALLERID);
- } else {
- ast_string_field_set(peer, cid_num, "");
- if (ast_strlen_zero(peer->cid_name))
- ast_clear_flag(peer, IAX_HASCALLERID);
- }
+ ast_string_field_set(peer, cid_num, S_OR(v->value, ""));
+ ast_set_flag(peer, IAX_HASCALLERID);
} else if (!strcasecmp(v->name, "sendani")) {
ast_set2_flag(peer, ast_true(v->value), IAX_SENDANI);
} else if (!strcasecmp(v->name, "inkeys")) {
More information about the svn-commits
mailing list